package com.spider.reader.common.tool; import java.io.File; import java.io.FileInputStream; import java.text.DecimalFormat; public class GetFileSize { /** * 取得文件大小 * @param file * @return * @throws Exception */ public static int getFileSize(File file) throws Exception { int s = 0; if (file.exists()) { FileInputStream fis = null; fis = new FileInputStream(file); s = fis.available(); } return s; } // 递归 public static long getFileSizes(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; } /** * 转换文件大小 * * @param fileS * @return */ public static String FormetFileSize(long fileS) { DecimalFormat df = new DecimalFormat("#.##"); String fileSizeString = ""; if (fileS < 1024) { fileSizeString = df.format((double) fileS) + "B"; } else if (fileS < 1048576) { fileSizeString = df.format((double) fileS / 1024) + "K"; } else if (fileS < 1073741824) { fileSizeString = df.format((double) fileS / 1048576) + "M"; } else { fileSizeString = df.format((double) fileS / 1073741824) + "G"; } return fileSizeString; } public static long getlist(File f) {// 递归求取目录文件个数 long size = 0; File flist[] = f.listFiles(); size = flist.length; for (int i = 0; i < flist.length; i++) { if (flist[i].isDirectory()) { size = size + getlist(flist[i]); size--; } } return size; } public static String getSize(String filepath) { String size = "0"; try { long l = 0; File ff = new File(filepath); if (ff.isDirectory()) { l = getFileSizes(ff); } else { l = getFileSize(ff); } size = FormetFileSize(l); } catch (Exception e) { e.printStackTrace(); } return size; } /** * 删除文件下的内容 * * @param path * @return */ public static boolean delAllFile(String filePath) { boolean flag = false; File file = new File(filePath); if (!file.exists()) { return flag; } if (!file.isDirectory()) { return flag; } String[] tempList = file.list(); File temp = null; for (int i = 0; i < tempList.length; i++) { if (filePath.endsWith(File.separator)) { temp = new File(filePath + tempList[i]); } else { temp = new File(filePath + File.separator + tempList[i]); } if (temp.isFile()) { temp.delete(); } if (temp.isDirectory()) { /** 先删除文件夹里面的文件 **/ delAllFile(filePath + "/" + tempList[i]); /** 再删除空文件夹 **/ delFolder(filePath + "/" + tempList[i]); flag = true; } } return flag; } /** * 删除整个文件夹 * * @param filePath */ public static void delFolder(String filePath) { try { /** 删除完里面所有内容 **/ delAllFile(filePath); File myFilePath = new File(filePath.toString()); /** 删除空文件夹 **/ myFilePath.delete(); } catch (Exception e) { e.printStackTrace(); } } public static void main(String args[]) { String zipSize = GetFileSize.getSize("D:/Tomcat6.0/webapps/midpui2.0/srcFile/4570-89672.zip"); System.out.println(FormetFileSize(12)); System.out.println(zipSize); } }
相关推荐
易语言对象操作文件夹源码,对象操作文件夹
本篇文章将深入探讨易语言对象操作文件夹的相关知识点。 1. **对象与类** 在易语言中,对象是类的实例。类定义了对象的属性和方法,而对象则是类的具体表现。例如,我们可以通过创建一个名为“文件夹”的类来定义...
C# 操作文件夹 包括搜索所有的文件夹 所有的文件 文件夹加密 感觉还不错
### 在Dos中操作文件夹 #### 一、引言 在计算机系统中,DOS(Disk Operating System)是一种早期的操作环境,它通过命令行界面来管理文件和文件夹。尽管现代操作系统如Windows提供了图形用户界面(GUI),但在某些...
利用VBA标准功能操作文件夹.zip源码EXCEL VBA宏编程Excel VBA实用技巧范例下载利用VBA标准功能操作文件夹.zip源码EXCEL VBA宏编程Excel VBA实用技巧范例下载利用VBA标准功能操作文件夹.zip源码EXCEL VBA宏编程Excel ...
利用文件对象模型FSO操作文件夹.zip源码EXCEL VBA宏编程Excel VBA实用技巧范例下载利用文件对象模型FSO操作文件夹.zip源码EXCEL VBA宏编程Excel VBA实用技巧范例下载利用文件对象模型FSO操作文件夹.zip源码EXCEL VBA...
在Excel-VBA的世界里,利用VBA(Visual Basic for Applications)标准功能操作文件夹是一项非常实用的技能。这项技能能够极大地提升工作效率,特别是在处理大量数据和自动化办公任务时。VBA不仅允许我们直接操作...
易语言源码易语言对象操作文件夹源码.rar 易语言源码易语言对象操作文件夹源码.rar 易语言源码易语言对象操作文件夹源码.rar 易语言源码易语言对象操作文件夹源码.rar 易语言源码易语言对象操作文件夹源码.rar ...
这个压缩包“Excel-VBA实用技巧范例-利用文件对象模型FSO操作文件夹.zip”包含了关于如何使用FSO进行文件夹操作的实例和教程。 首先,让我们了解什么是FSO。FSO是Microsoft Scripting Runtime库的一部分,可以在VBA...
然而,通过一些间接方式,我们可以利用jQuery和其他相关技术实现对文件和文件夹的操作。以下是一些相关的知识点: 1. **Ajax请求**:jQuery的Ajax功能可以用于在后台与服务器通信。通过创建XMLHttpRequest对象,...
vb+vss+读取配置文件+cmd命令+操作文件夹。 vb 控制vss,下载java文件到配置文件定义的路径下,再调用ant命令编译java文件为class,定时发布class文件到相应的开发环境,测试环境等。
Windows 操作系统文件夹详解 Windows 操作系统中最重要的莫过于“Windows”文件夹,对电脑进行任何操作几乎都有关。了解这里对于掌握整个系统的运作有很大的作用。下面将对“Windows”文件夹中的重要文件夹进行详细...
在.NET框架中,操作文件和文件夹是常见的任务,涵盖了创建、读取、写入、删除、移动等操作。为了及时检测文件夹中的文件或文件夹的变化情况,开发者可以利用.NET提供的文件系统监视器(FileSystemWatcher)类。下面...
WIN10 操作系统中,文件夹不自动刷新的问题是一个常见的问题。这种问题可能是由于系统设置或注册表项的配置不当所引起的。在本文中,我们将详细介绍 WIN10 文件夹不自动刷新解决方案。 一、 WIN10 文件夹自动刷新...
本压缩包包含的“易语言对象操作文件夹”源码是一个易语言编写的实例,主要用于教授如何在易语言中进行文件夹的操作,如创建、删除、复制、移动等。这一知识点对于初学者来说非常实用,因为它涵盖了文件系统管理的...
共享文件夹功能支持以下操作系统: - Windows Server 2003 - Windows XP - Windows 2000 - Windows NT 4.0 - 拥有2.4版或更高版本核心的Linux - 不支持Windows 98客户机 #### 四、设置共享文件夹步骤 ##### 1. 宿...
在QT中,可以使用QDir类来操作文件夹,例如创建、删除、复制文件夹等。为了实现文件夹的复制,可以使用递归函数qCopyDirectory,该函数将源文件夹的所有文件和子文件夹复制到目标文件夹中。 函数qCopyDirectory的...
DirectoryInfo 类提供了许多有用的方法和属性来操作文件夹,例如 GetFiles 方法可以获取文件夹中的所有文件,GetDirectories 方法可以获取文件夹中的所有子文件夹。 知识点三:使用递归思想 在获取文件夹大小的...
9. **编程接口**:在编程中,经常需要编写代码来选择或操作文件夹,如使用Python的os模块或Java的File类。 10. **权限与安全**:选择文件夹时,需注意权限设置,防止未经授权的访问或修改。 总之,选择文件夹这一...
首先,我们需要引入`System.IO`和`System.Security.AccessControl`命名空间,这两个命名空间提供了操作文件和文件夹权限所需的类和方法。例如: ```csharp using System.IO; using System.Security.AccessControl; ...