精华内容
下载资源
问答
  • 主要介绍了java获取文件大小的几种方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
  • java获取文件大小_Java获取文件大小

    千次阅读 2020-07-19 18:24:52
    java获取文件大小Today we will look into different ways to get file size in Java. 今天,我们将研究使用Java获取文件大小的不同方法。 Java获取文件大小 (Java get file size) There are different classes ...

    java获取文件大小

    Today we will look into different ways to get file size in Java.

    今天,我们将研究使用Java获取文件大小的不同方法。

    Java获取文件大小 (Java get file size)

    There are different classes that we can use for java get file size program. Some of them are;

    我们可以将不同的类用于java get文件大小程序。 他们之中有一些是;

    1. Java get file size using File class

      Java使用File类获取文件大小
    2. Get file size in java using FileChannel class

      使用FileChannel类获取Java中的文件大小
    3. Java get file size using Apache Commons IO FileUtils class

      Java使用Apache Commons IO FileUtils类获取文件大小

    Before we look into an example program to get file size, we have a sample pdf file with size 2969575 bytes.

    在研究示例程序获取文件大小之前,我们有一个样本PDF文件,大小为2969575字节。

    Java使用File类获取文件大小 (Java get file size using File class)

    Java File length() method returns the file size in bytes. The return value is unspecified if this file denotes a directory. So before calling this method to get file size in java, make sure file exists and it’s not a directory.

    Java File length()方法返回以字节为单位的文件大小。 如果此文件表示目录,则未指定返回值。 因此,在调用此方法以获取Java中的文件大小之前,请确保文件存在并且它不是目录。

    Below is a simple java get file size example program using File class.

    以下是使用File类的简单Java获取文件大小示例程序。

    package com.journaldev.getfilesize;
    
    import java.io.File;
    
    public class JavaGetFileSize {
    
    	static final String FILE_NAME = "/Users/pankaj/Downloads/file.pdf";
    
    	public static void main(String[] args) {
    		File file = new File(FILE_NAME);
    		if (!file.exists() || !file.isFile()) return;
    
    		System.out.println(getFileSizeBytes(file));
    		System.out.println(getFileSizeKiloBytes(file));
    		System.out.println(getFileSizeMegaBytes(file));
    	}
    
    	private static String getFileSizeMegaBytes(File file) {
    		return (double) file.length() / (1024 * 1024) + " mb";
    	}
    	
    	private static String getFileSizeKiloBytes(File file) {
    		return (double) file.length() / 1024 + "  kb";
    	}
    
    	private static String getFileSizeBytes(File file) {
    		return file.length() + " bytes";
    	}
    }

    使用FileChannel类获取Java中的文件大小 (Get file size in java using FileChannel class)

    We can use FileChannel size() method to get file size in bytes.

    我们可以使用FileChannel size()方法来获取文件大小(以字节为单位)。

    package com.journaldev.getfilesize;
    
    import java.io.IOException;
    import java.nio.channels.FileChannel;
    import java.nio.file.Path;
    import java.nio.file.Paths;
    
    public class JavaGetFileSizeUsingFileChannel {
    
    	static final String FILE_NAME = "/Users/pankaj/Downloads/file.pdf";
    
    	public static void main(String[] args) {
    
    		Path filePath = Paths.get(FILE_NAME);
    		FileChannel fileChannel;
    		try {
    			fileChannel = FileChannel.open(filePath);
    			long fileSize = fileChannel.size();
    			System.out.println(fileSize + " bytes");
    			fileChannel.close();
    		} catch (IOException e) {
    			e.printStackTrace();
    		}
    	}
    }

    Java使用Apache Commons IO FileUtils类获取文件大小 (Java get file size using Apache Commons IO FileUtils class)

    If you are already using Apache Commons IO in your project, then you can use FileUtils sizeOf method to get file size in java.

    如果您已经在项目中使用Apache Commons IO,则可以使用FileUtils sizeOf方法来获取Java中的文件大小。

    package com.journaldev.getfilesize;
    
    import java.io.File;
    
    import org.apache.commons.io.FileUtils;
    
    public class JavaGetFileSizeUsingApacheCommonsIO {
    
    	static final String FILE_NAME = "/Users/pankaj/Downloads/file.pdf";
    
    	public static void main(String[] args) {
    		File file = new File(FILE_NAME);
    
    		long fileSize = FileUtils.sizeOf(file);
    
    		System.out.println(fileSize + " bytes");
    	}
    }

    That’s all for java get file size programs.

    Java获取文件大小程序就这些了。

    GitHub Repository. GitHub存储库中签出更多Java IO示例。

    翻译自: https://www.journaldev.com/839/java-get-file-size

    java获取文件大小

    展开全文
  • 这个文件中包含测试的Demo需要的jar包,Demo中有两种方式来获取视频的分辨率,大小等基本信息,简单易上手,亲测有效,没效你顺着网线过来da我
  • java获取文件创建时间

    2012-05-11 16:25:35
    java代码 获取文件创建时间,有一点小问题就是,当文件名有空格时,将会出错、有心人可解决、
  • import java.io.File; import java.text.SimpleDateFormat; import java.util.Date; import java.util.logging.SimpleFormatter; public class wenjianshuxing { public static void main(String[] args) { File fil...

    import java.io.File;
    import java.text.SimpleDateFormat;
    import java.util.Date;
    import java.util.logging.SimpleFormatter;

    public class wenjianshuxing {
    public static void main(String[] args) {
    File file =new File(“e:”+File.separator+“icon_kaoshipjj.png”);
    if(file.exists()){
    long mysize = file.length();
    long lastModified = file.lastModified();
    System.out.println(“大小:”);
    SimpleDateFormat dateFormat = new SimpleDateFormat(“YYYY-MM-dd HH:mm:ss”);//注意大小写是不一样的,一般返回时间和日期都是以毫秒和字节这些基本的单位

    // dateFormat.format(lastModified);
    System.out.println(“大小:”+mysize+" ,"+“修改时间:”+ dateFormat.format(lastModified));
    }
    }
    }

    展开全文
  • 关于在处理文件上传的时候,怎么样去获取大小,并且在开发的时候去控制大小
  • 主要介绍了JAVA获取文件绝对路径的方法,涉及针对文件路径的操作技巧,需要的朋友可以参考下
  • Java 获取文件大小

    万次阅读 2019-03-30 21:46:57
    本文介绍几种方法获取文件大小,分别是java io nio 以及第三方库实现。 标准的java io 首先开始一个简单实例计算文件大小,使用File.lenght()方法: private long getFileSize(File file) { long length = file....

    Java 获取文件大小

    本文介绍几种方法获取文件大小,分别是java io 和 nio 以及第三方库实现。

    标准的java io

    首先开始一个简单实例计算文件大小,使用File.lenght()方法:

    private long getFileSize(File file) {
        long length = file.length();
        return length;
    }
    

    需要注意的是,默认返回的文件大小单位是字节(byte)。文件不存在返回0L。没有权限抛异常SecurityException。

    使用 java NIO

    下面我们看如何使用NIO库实现,通过 FileChannel.size() 方法获取文件大小:

        Path imageFilePath = Paths.get("src/test/resources/image.jpg");
        FileChannel imageFileChannel = FileChannel.open(imageFilePath);
     
        long imageFileSize = imageFileChannel.size();
    

    同样单位也是字节(byte)。

    使用Apache Commons IO

    下面看如何使用Apache Commons IO获取文件大小,调用FileUtils.sizeOf()方法:

        File imageFile = new File("src/test/resources/image.jpg");
        long size = FileUtils.sizeOf(imageFile);
    

    注意,如果文件没有权限,该方法返回0.

    文件大小转换

    最后,我们看如何获得用户可读方式表示文件大小,使用Apache Commons IO – 不仅显示字节单位:

    @Test
    public void whenGetReadableFileSize_thenCorrect() {
        File imageFile = new File("src/test/resources/image.jpg");
        long size = getFileSize(imageFile);
      
        assertEquals("12 KB", FileUtils.byteCountToDisplaySize(size));
    }
    

    文件实际大小为12607字节,返回结果为12 KB。

    总结

    本文我们通过几种方式获取文件大小,并转换为用户可读方式表示。

    展开全文
  • 获取某路径下文件名、大小、修改时间、类型, 然后自己创建个实体类,在打印位置将文件属性set到实体类的相对应属性。原谅小弟收积分。我也是想赚点积分学习而已。提倡大家免积分分享。走向真正的开源。。。。
  • Java实现获取文件信息,可以获得文件所在的路径名,还可以获得文件大小
  • * 获取文件修改时间 * @Title: getFileTime * @param 文件路径 * @return String 文件修改时间 * @author projectNo */ public String getFileTime(String filepath){ File f = new Fi
        /**
         * 获取文件修改时间
         * @Title: getFileTime
         * @param 文件路径
         * @return String 文件修改时间
         * @author projectNo
         */
        public String getFileTime(String filepath){  
            File f = new File(filepath);   
            SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");             
            Calendar cal = Calendar.getInstance();  
            long time = f.lastModified();  
            cal.setTimeInMillis(time);       
            return formatter.format(cal.getTime()); 
        }
    
        /**
         * 获取文件大小
         * @Title: getFileSizes
         * @param File
         * @return String 转换后的文件大小
         * @author projectNo
         * 
         */
    
        private long getFileSizes(final File file) {
            if (file.isFile())
                return file.length();
            final File[] children = file.listFiles();
            long total = 0;
            if (children != null)
                for (final File child : children)
                    total += getFileSizes(child);
            return total;
        }
    
        /**
         * 递归获取目录大小
         * @Title: getFileSize
         * @param File
         * @return long 目录大小
         * @author projectNo
         * @throws Exception 
         * 
         */
         public long getFileSize(File f)throws Exception
         {
            long size = 0;
            File flist[] = f.listFiles();
            for (int i = 0; i < flist.length; i++)
            {
                if (flist[i].isDirectory())
                {
                    size = size + getFileSize(flist[i]);
                } else
                {
                    size = size + flist[i].length();
                }
            }
            return size;
         }
    
         /**
         * 转换文件大小
         * @Title: FormetFileSize
         * @param long文件大小值
         * @return String 文件大小
         * @author projectNo
         * 
         */
         public String FormetFileSize(long fileS) {
            DecimalFormat df = new DecimalFormat("#.00");
            DecimalFormat d = new DecimalFormat("#");
            String fileSizeString = "";
            if(fileS < 1024){
                fileSizeString = d.format((double) fileS) + "B";
            } else if (fileS < 1048576) {
                fileSizeString = df.format((double) fileS / 1024) + "KB";
            } else if (fileS < 1073741824) {
                fileSizeString = df.format((double) fileS / 1048576) + "MB";
            } else {
                fileSizeString = df.format((double) fileS / 1073741824) +"GB";
            }
            return fileSizeString;
         } 
    
        /**
         * 文件下载
         * @Title: download
         * @Description: 文件下载
         * @return 下载文件
         * @author projectNo
         * @date 2017-8-9 下午9:35:06
         */
    public void download (HttpServletResponse response) {
            String path = "D:/a.txt";//保证目录下有此文件,如没有手动新建
             try {
                // path是指欲下载的文件的路径。
                File file = new File(path);            
                // 取得文件名。
                String filename = file.getName();
                // 以流的形式下载文件。
                InputStream fis = new BufferedInputStream(new FileInputStream(path));
                byte[] buffer = new byte[fis.available()];
                fis.read(buffer);
                fis.close();
                // 清空response
                response.reset();
                // 设置response的Header,防止文件名乱码
                response.addHeader("Content-Disposition", "attachment;filename=" + new String(filename.getBytes("gb2312"),"ISO8859-1"));
                response.addHeader("Content-Length", "" + file.length());
                OutputStream toClient = new BufferedOutputStream(response.getOutputStream());
                response.setContentType("application/octet-stream");
                toClient.write(buffer);
                toClient.flush();
                toClient.close();
            } catch (IOException ex) {
                ex.printStackTrace();
            }
        }

    以上就是Java获取文件和目录大小、最后修改时间和文件下载方法详细代码,希望对大家有所帮助,如有疑问或者问题可以在下方留言,楼主看到会第一时间回复。

    展开全文
  • java获取文件大小的方法

    千次阅读 2019-09-20 10:28:05
    目前Java获取文件大小的方法有两种: 1、通过file的length()方法获取; 2、通过流式方法获取; 通过流式方法又有两种,分别是旧的java.io.*中FileInputStream的available()方法和新的java..nio.*中的FileChannel ...
  • java获取文件大小(文件、路径) 1.导入jar包,哦对了,这次没有jar包(????) 或许这里并没有jar包 2.文件大小(路径) /** * 文件大小--路径 * * @return */ public static long getFileLength(String ...
  • 主要介绍了Java获取文件大小的详解及实例代码的相关资料,一种是使用File的length()方法,另外一种是使用FileInputStream的available()方法,这里就说下如何使用需要的朋友可以参考下
  • Java获取文件大小

    2019-11-13 10:15:43
    import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.IOException; import java.nio.channels.FileChannel; import java.text.Decim...
  • java操作文件,得到文件名,大小时间,及修改时间java操作文件,得到文件名,大小时间,及修改时间java操作文件,得到文件名,大小时间,及修改时间
  • NULL 博文链接:https://zhaoshijie.iteye.com/blog/804517
  • java获取文件实际大小

    千次阅读 2019-03-22 14:57:45
    获取文件大小 KB、MB、GB、BT 一般获取文件是通过以下流方式获取大小,单位是B
  • java获取文件大小

    万次阅读 2019-04-26 16:57:57
    1.MultipartFile获取文件大小 使用方法:file.getSize(); /** * 接收文件 * * * @param model * @return */ @RequestMapping(value = "imageupload") public void imageUpload(MultipartFile file) { //文件...
  • 主要为大家详细介绍了JavaCV获取视频文件时长的方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
  • java 获得文件大小并转换为MB

    千次阅读 2019-10-25 09:14:40
    //不能直接进行运算,会损失精度,因此先取得大小 double fileSize = file.length(); //运算转换单位(保留2位小数) double fileSizeMB = new BigDecimal(fileSize/1024/1024).setScale(2, BigDecimal.ROUND_HALF_UP...
  • 1.java获取上传文件大小,时长 在java获取上传文件的时长方法多种,在此我用其中的一种,不过需要引入一个jave.jar,此jar在maven仓库总下载不到,我保存到自己的网盘中了,链接: ...
  • #java代码遍历文件目录下的文件获取文件的创建时间和修改时间 ##例如文件目录为:D:/test 文件夹下包含有这5个文件: ##具体java代码如下(jsa.java): import java.nio.file.Files; import java.nio.file....
  • * @Description //获取网络文件大小 * @Date 2020/12/4 * @Param [downloadUrl] */ private static long getFileLength(String downloadUrl) throws IOException { if (downloadUrl == null || "".equal..
  • Java中,可以使用File.length()方法获取文件大小(以字节为单位)。 例 获取一个图像文件(c:\\ java_xml_logo.jpg)14KB,并显示文件大小。 package com.mkyong.file; import java.io.File; public ...
  • java获取远程文件大小

    千次阅读 2017-06-18 21:44:08
    首先需要的是一个资源的..."无法获取文件大小。" ); else System. out .println( "文件大小为:" + size + " bytes" ); conn.getInputStream().close(); } } 运行结果为: 文件大小为: 31808 bytes
  • 前言: winform程序下载功能,想要在下载前获取到文件的大小等信息并展示到界面上,...* 获取网络文件大小 */ private static long getFileLength(String downloadUrl) throws IOException{ if(downloadUrl ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 400,007
精华内容 160,002
关键字:

java获取文件大小和时间

java 订阅