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 ...
随机推荐
- js中indexof()简单使用
indexOf()方法返回某个指定的字符串值在字符串中首次出现的位置. stringObject.indexOf(searchvalue,fromindex):indexOf()方法对大小写敏感如果要 ...
- IPMI 配置BMC用户设置
IPMI 配置BMC用户设置 本文档共介绍5条ipmi设置user的命令,这些命令需要使用root权限才能使用,其中- H为需要操作的BMC ip,-I lanplus为使用rmcp+协议发送命令,- ...
- iOS中发送xml给服务器
转载自:http://www.cocoachina.com/bbs/read.php?tid-456019.html 一.用URLSession请求 NSString *soapStr = [NSSt ...
- iOS — Autolayout之Masonry解读
前言 1 MagicNumber -> autoresizingMask -> autolayout 以上是纯手写代码所经历的关于页面布局的三个时期 在iphone1-iphone3gs时 ...
- ADO.NET DataReader和DataAdapter的区别
SqlDataReader是一个向前的指针,本身并不包含数据,调用一次 Read() 方法它就向前到下一条记录,一个SqlDataReader必须单独占用一个打开的数据库连接. 在使用 SqlData ...
- C#数组的指定位置复制函数
1. // 源数组 - 起始位置 -目的数组 - 起始位置 - 长度 System.Array.Copy(mcu_data, 2, read_mcu_data_whole, 0, mcu_data.L ...
- (原)python中import caffe提示no module named google.protobuf.internal
转载请注明出处: http://www.cnblogs.com/darkknightzh/p/5993405.html 之前在一台台式机上在python中使用import caffe时,没有出错.但是 ...
- asp.net 中如何判断字符串中有几个逗号 (asp也通用)
如: 字符串 a="1,2,3"; 怎样判断a 中的逗号 有几个 len(a)-len(replace(a,",",""))
- jquery实现导航栏头部点击变换颜色
实现效果如下: 话不多说直接上代码: <!DOCTYPE html> <html lang="en"> <head> <meta char ...
- mysql 命令行 自动补全
配置文件中 默认关闭自动补全: [mysql] #no-auto-rehash # faster start of mysql but no tab completition 改为: [mysql] ...