Java获取文件和目录大小、最后修改时间和文件下载方法详细代码

您所在的位置:网站首页 获取文件夹名称及大小 Java获取文件和目录大小、最后修改时间和文件下载方法详细代码

Java获取文件和目录大小、最后修改时间和文件下载方法详细代码

2024-07-14 17:05:24| 来源: 网络整理| 查看: 265

/** * 获取文件修改时间 * @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获取文件和目录大小、最后修改时间和文件下载方法详细代码,希望对大家有所帮助,如有疑问或者问题可以在下方留言,楼主看到会第一时间回复。



【本文地址】

公司简介

联系我们

今日新闻


点击排行

实验室常用的仪器、试剂和
说到实验室常用到的东西,主要就分为仪器、试剂和耗
不用再找了,全球10大实验
01、赛默飞世尔科技(热电)Thermo Fisher Scientif
三代水柜的量产巅峰T-72坦
作者:寞寒最近,西边闹腾挺大,本来小寞以为忙完这
通风柜跟实验室通风系统有
说到通风柜跟实验室通风,不少人都纠结二者到底是不
集消毒杀菌、烘干收纳为一
厨房是家里细菌较多的地方,潮湿的环境、没有完全密
实验室设备之全钢实验台如
全钢实验台是实验室家具中较为重要的家具之一,很多

推荐新闻


图片新闻

实验室药品柜的特性有哪些
实验室药品柜是实验室家具的重要组成部分之一,主要
小学科学实验中有哪些教学
计算机 计算器 一般 打孔器 打气筒 仪器车 显微镜
实验室各种仪器原理动图讲
1.紫外分光光谱UV分析原理:吸收紫外光能量,引起分
高中化学常见仪器及实验装
1、可加热仪器:2、计量仪器:(1)仪器A的名称:量
微生物操作主要设备和器具
今天盘点一下微生物操作主要设备和器具,别嫌我啰嗦
浅谈通风柜使用基本常识
 众所周知,通风柜功能中最主要的就是排气功能。在

专题文章

    CopyRight 2018-2019 实验室设备网 版权所有 win10的实时保护怎么永久关闭