java获取文件大小
1.使用File的length()方法获取。这个方法获取的字节数,由于返回的是Long类型所以能返回的最大值是Long.MAX_VALUE
File file = new File(
"D:\\迅雷下载\\名侦探柯南:业火的向日葵.修复版.Meitantei.Conan.Goka.no.himawari.2015.HD720P.X264.AAC.Japanese.CHS.Mp4Ba\\名侦探K南:业H的向日葵.修复版.Meitantei.Conan.Goka.no.himawari.2015.HD720P.X264.AAC.Japanese.CHS.Mp4Ba.mp4");
long length = file.length();
System.out.println(length);// 2337588477生成的文件的大小
System.out.println(Long.MAX_VALUE);// 9223372036854775807 long类型的最大值
System.out.println("--------------------------------");
2.使用FileInputStream的available()方法.返回的字节数和Integer.MAX_VALUE的最大值相同。由于返回值是int类型的所以这个方法只支持小于Integer.MAX_VALUE的方法,大于的话就不准确了
FileInputStream is = new FileInputStream(file);
int available = is.available();
System.out.println(available); // 2147483647
System.out.println(Integer.MAX_VALUE);// 2147483647
System.out.println("--------------------------------");
3.使用java.nio.*下的FileChannel工具.使用FileChannel后得到的结果与第一种情况吻合,准确地描述了文件的准确大小。
System.out.println("--------------------------------");
FileChannel channel = is.getChannel();
long size2 = channel.size();
System.out.println(size2);// 2337588477
System.out.println("-----------------------------------");
File的length()方法与FileChannel的size方法返回的值是long类型的,long类型能表示的整数的最大值是9223372036854775807 ,支持的最大文件大小大约为8954730132868714 EB。FileInputStream的avaliable()方法返回的值是int类型的,所能支持的最大文件大小为1.99G,所以在选择文件校验的时候请谨慎选择。较大文件还是使用第一种和第三种方法
其他方法:
如果是在web项目中使用spring来管理文件 可以采用下面的方法
File file = new File("D:\\迅雷下载\\名侦探柯南:业火的向日葵.修复版.Meitantei.Conan.Goka.no.himawari.2015.HD720P.X264.AAC.Japanese.CHS.Mp4Ba\\名侦探K南:业H的向日葵.修版.Meitantei.Conan.Goka.no.himawari.2015.HD720P.X264.AAC.Japanese.CHS.Mp4Ba.mp4");
MultipartFile file1 = (MultipartFile) file;
long size = file1.getSize();
System.out.println(size);//2337588477
java获取文件大小的更多相关文章
- java获取文件大小的方法
目前Java获取文件大小的方法有两种: 1.通过file的length()方法获取: 2.通过流式方法获取: 通过流式方法又有两种,分别是旧的java.io.*中FileInputStream的ava ...
- Java获取文件大小的正确方法(转)
Java中获取文件大小的正确方法 2014-03-28 14:03 64507人阅读 评论(9) 收藏 举报 分类: Java笔记(36) 研究成果(42) 版权声明:本文为博主原创文章,未经博 ...
- Java中获取文件大小的正确方法
本文出处:http://blog.csdn.net/djy1992/article/details/51146837,转载请注明.由于本人不定期会整理相关博文,会对相应内容作出完善.因此强烈建议在原始 ...
- Java如何从服务器获取文件大小?
在Java编程中,如何从服务器获取文件大小? 以下示例演示如何从服务器获取文件大小. package com.yiibai; import java.net.URL; import java.net. ...
- 牛客网Java刷题知识点之File对象常用功能:获取文件名称、获取文件路径、获取文件大小、获取文件修改时间、创建与删除、判断、重命名、查看系统根目录、容量获取、获取某个目录下内容、过滤器
不多说,直接上干货! 获取文件名称.获取文件路径.获取文件大小.获取文件修改时间 FileMethodDemo.java package zhouls.bigdata.DataFeatureSelec ...
- Java 读取网络资源文件 获取文件大小 MD5校验值
Java 读取网络资源文件 获取文件大小 MD5校验值 封装一个文件操作工具类: package c; import java.io.*; import java.net.HttpURLConnect ...
- java获取https网站证书,附带调用https:webservice接口
一.java 获取https网站证书: 1.创建一个java工程,新建InstallCert类,将以下代码复制进去 package com; import java.io.BufferedReader ...
- 客户端用javascript获取文件大小
客户端用javascript获取文件大小 1 ie实现代码如下: <script type="text/javascript" language="javascri ...
- python获取文件大小
python获取文件大小 # !/usr/bin/python3.4 # -*- coding: utf-8 -*- import os # 字节bytes转化kb\m\g def formatSiz ...
随机推荐
- javascript实现倒计时程序
最近在网上看到一道这样的面试题: 题: 网页中实现一个计算当年还剩多少时间的倒数计时程序,要求网页上实时动态显示“××年还剩××天××时××分××秒”? 我实现了,发现挺有意思,下面把我的代码贴出来 ...
- 决策树简单介绍(二) Accord.Net中决策树的实现和使用
决策树介绍 决策树是一类机器学习算法,可以实现对数据集的分类.预测等.具体请阅读我另一篇博客(http://www.cnblogs.com/twocold/p/5424517.html). Accor ...
- DTO学习系列之AutoMapper(六)----EntityFramework和AutoMapper的婚后生活
写在前面 我到底是什么? 越界的可怕 做好自己 后记 文章标题主要关键字:mapping DTOs to Entities,注意并不是“Entities to DTOs”,表示实体对象到DTO的转换, ...
- unity针对iphone的屏幕旋转
屏幕旋转可以在引擎里设置: 依次点开 Edit——Project Setting——Player 即可设置如图: 接下来的是 雨松大神的 代码控制,本屌是安卓机器,没能测试. C# using Uni ...
- c++11-bind的用法
bind函数 在c++11之前,要绑定某个函数.函数对象或者成员函数的不同参数值需要用到不同的转换器,如bind1st.bind2nd.fun_ptr.mem_fun和mem_fun_ref等.在c+ ...
- iOS学习之视图加载过程中会触发的方法(loadView/viewDidLoad/didReceiveMemoryWarning)
1.loadView 这是视图控制器用来加载根视图的方法; 如果需要将自定义的视图作为根视图,则不需要调用父类对该方法的实现([super loadView]);直接将自定义视图通过self.view ...
- Scala学习笔记--隐式转换
隐式转换的规则:1.无歧义规则:隐式转换唯有不存在其他可插入转换的前提下才能插入 若编译器有两种方法修正x+y 如convert1(x)+y,convert2(x)+y,会报错2.单一调用规则:只尝 ...
- 痛并快乐的造轮子之旅:awk访问数据库之旅
俺是一枚悲催的数据统计程序员,从先辈的手里接收了这样的代码: #! /bin/sh alias statdb="mysql -h 192.168.1.1 -u stat -paaa stat ...
- Codeforces 366C Dima and Salad
http://codeforces.com/problemset/problem/366/C 题意:在一个冰箱里有n种水果,并且这些水果每一种都有一个美味度和一个卡路里的属性, 小明要从这些水果中选出 ...
- Win8/Win8.1都有哪些版本?我该选择哪个?(二)
Windows版本分类比较复杂,下文主要为大家理清Win8/Win8.1的版本种类.如果想了解更多,可以结合<Win7/Win8/Win8.1众多版本,我该选择哪个?>一文来了解. 细数W ...