- 浏览: 77974 次
- 性别:
- 来自: 广州
文章分类
最新评论
/** * */ package src.com; import java.io.BufferedReader; import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.FileReader; import java.io.IOException; import java.io.InputStream; import java.io.PrintStream; /** * @author 43545520 * */ public class FileUtil { /** * 复制目录下的文件(不包括该目录)到指定目录,会连同子目录一起复制过去。 * * @param targetFile * @param path */ public static void copyFileFromDir(String targetDir, String path) { File file = new File(path); createFile(targetDir, false); if (file.isDirectory()) { copyFileToDir(targetDir, listFile(file)); } } /** * 复制目录下的文件(不包含该目录和子目录,只复制目录下的文件)到指定目录。 * * @param targetDir * @param path */ public static void copyFileOnly(String targetDir, String path) { File file = new File(path); File targetFile = new File(targetDir); if (file.isDirectory()) { File[] files = file.listFiles(); for (File subFile : files) { if (subFile.isFile()) { copyFile(targetFile, subFile); } } } } /** * 复制目录到指定目录。targetDir是目标目录,path是源目录。 该方法会将path以及path下的文件和子目录全部复制到目标目录 * * @param targetDir * @param path */ public static void copyDir(String targetDir, String path) { File targetFile = new File(targetDir); createFile(targetFile, false); File file = new File(path); if (targetFile.isDirectory() && file.isDirectory()) { copyFileToDir(targetFile.getAbsolutePath() + "/" + file.getName(), listFile(file)); } } /** * 复制一组文件到指定目录。targetDir是目标目录,filePath是需要复制的文件路径 * * @param targetDir * @param filePath */ public static void copyFileToDir(String targetDir, String... filePath) { if (targetDir == null || "".equals(targetDir)) { System.out.println("参数错误,目标路径不能为空"); return; } File targetFile = new File(targetDir); if (!targetFile.exists()) { targetFile.mkdir(); } else { if (!targetFile.isDirectory()) { System.out.println("参数错误,目标路径指向的不是一个目录!"); return; } } for (String path : filePath) { File file = new File(path); if (file.isDirectory()) { copyFileToDir(targetDir + "/" + file.getName(), listFile(file)); } else { copyFileToDir(targetDir, file, ""); } } } /** * 复制文件到指定目录。targetDir是目标目录,file是源文件名,newName是重命名的名字。 * * @param targetFile * @param file * @param newName */ public static void copyFileToDir(String targetDir, File file, String newName) { String newFile = ""; if (newName != null && !"".equals(newName)) { newFile = targetDir + "/" + newName; } else { newFile = targetDir + "/" + file.getName(); } File tFile = new File(newFile); copyFile(tFile, file); } /** * 复制文件。targetFile为目标文件,file为源文件 * * @param targetFile * @param file */ public static void copyFile(File targetFile, File file) { if (targetFile.exists()) { System.out.println("文件" + targetFile.getAbsolutePath() + "已经存在,跳过该文件!"); return; } else { createFile(targetFile, true); } System.out.println("复制文件" + file.getAbsolutePath() + "到" + targetFile.getAbsolutePath()); try { InputStream is = new FileInputStream(file); FileOutputStream fos = new FileOutputStream(targetFile); byte[] buffer = new byte[1024]; while (is.read(buffer) != -1) { fos.write(buffer); } is.close(); fos.close(); } catch (FileNotFoundException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } public static String[] listFile(File dir) { String absolutPath = dir.getAbsolutePath(); String[] paths = dir.list(); String[] files = new String[paths.length]; for (int i = 0; i < paths.length; i++) { files[i] = absolutPath + "/" + paths[i]; } return files; } public static void createFile(String path, boolean isFile) { createFile(new File(path), isFile); } public static void createFile(File file, boolean isFile) { if (!file.exists()) { if (!file.getParentFile().exists()) { createFile(file.getParentFile(), false); } else { if (isFile) { try { file.createNewFile(); } catch (IOException e) { e.printStackTrace(); } } else { file.mkdir(); } } } } /** *//**获得控制台用户输入的信息 * @return * @throws IOException */ public String getInputMessage() throws IOException{ System.out.println("请输入您的命令∶"); byte buffer[]=new byte[1024]; int count=System.in.read(buffer); char[] ch=new char[count-2];//最后两位为结束符,删去不要 for(int i=0;i<count-2;i++) ch[i]=(char)buffer[i]; String str=new String(ch); return str; } /** *//**以文件流的方式复制文件 * @param src 文件源目录 * @param dest 文件目的目录 * @throws IOException */ public void copyFile(String src,String dest) throws IOException{ FileInputStream in=new FileInputStream(src); File file=new File(dest); if(!file.exists()) file.createNewFile(); FileOutputStream out=new FileOutputStream(file); int c; byte buffer[]=new byte[1024]; while((c=in.read(buffer))!=-1){ for(int i=0;i<c;i++) out.write(buffer[i]); } in.close(); out.close(); } public void StringBufferDemo() throws IOException{ File file=new File("/root/sms.log"); if(!file.exists()) file.createNewFile(); FileOutputStream out=new FileOutputStream(file,true); for(int i=0;i<10000;i++){ StringBuffer sb=new StringBuffer(); sb.append("这是第"+i+"行:前面介绍的各种方法都不关用,为什么总是奇怪的问题 "); out.write(sb.toString().getBytes("utf-8")); } out.close(); } /** *//**文件重命名 * @param path 文件目录 * @param oldname 原来的文件名 * @param newname 新文件名 */ public void renameFile(String path,String oldname,String newname){ if(!oldname.equals(newname)){//新的文件名和以前文件名不同时,才有必要进行重命名 File oldfile=new File(path+"/"+oldname); File newfile=new File(path+"/"+newname); if(newfile.exists())//若在该目录下已经有一个文件和新文件名相同,则不允许重命名 System.out.println(newname+"已经存在!"); else{ oldfile.renameTo(newfile); } } } /** *//**转移文件目录 * @param filename 文件名 * @param oldpath 旧目录 * @param newpath 新目录 * @param cover 若新目录下存在和转移文件具有相同文件名的文件时,是否覆盖新目录下文件,cover=true将会覆盖原文件,否则不操作 */ public void changeDirectory(String filename,String oldpath,String newpath,boolean cover){ if(!oldpath.equals(newpath)){ File oldfile=new File(oldpath+"/"+filename); File newfile=new File(newpath+"/"+filename); if(newfile.exists()){//若在待转移目录下,已经存在待转移文件 if(cover)//覆盖 oldfile.renameTo(newfile); else System.out.println("在新目录下已经存在:"+filename); } else{ oldfile.renameTo(newfile); } } } // /** *//**从目录中读取xml文件 // * @param path 文件目录 // * @return // * @throws DocumentException // * @throws IOException // */ // public Document readXml(String path) throws DocumentException, IOException{ // File file=new File(path); // BufferedReader bufferedreader = new BufferedReader(new FileReader(file)); // SAXReader saxreader = new SAXReader(); // Document document = (Document)saxreader.read(bufferedreader); // bufferedreader.close(); // return document; // } /** *//**创建文件夹 * @param path 目录 */ public void createDir(String path){ File dir=new File(path); if(!dir.exists()) dir.mkdir(); } /** *//**创建新文件 * @param path 目录 * @param filename 文件名 * @throws IOException */ public void createFile(String path,String filename) throws IOException{ File file=new File(path+"/"+filename); if(!file.exists()) file.createNewFile(); } /** *//**删除文件 * @param path 目录 * @param filename 文件名 */ public void delFile(String path,String filename){ File file=new File(path+"/"+filename); if(file.exists()&&file.isFile()) file.delete(); } /** *//**递归删除文件夹 * @param path */ public void delDir(String path){ File dir=new File(path); if(dir.exists()){ File[] tmp=dir.listFiles(); for(int i=0;i<tmp.length;i++){ if(tmp[i].isDirectory()){ delDir(path+"/"+tmp[i].getName()); } else{ tmp[i].delete(); } } dir.delete(); } } /** *//**读文件 * @param path * @return * @throws IOException */ public String BufferedReaderDemo(String path) throws IOException{ File file=new File(path); if(!file.exists()||file.isDirectory()) throw new FileNotFoundException(); BufferedReader br=new BufferedReader(new FileReader(file)); String temp=null; StringBuffer sb=new StringBuffer(); temp=br.readLine(); while(temp!=null){ sb.append(temp+" "); temp=br.readLine(); } return sb.toString(); } /** *//**读文件 * @param path * @return * @throws IOException */ public String FileInputStreamDemo(String path) throws IOException{ File file=new File(path); if(!file.exists()||file.isDirectory()) throw new FileNotFoundException(); FileInputStream fis=new FileInputStream(file); byte[] buf = new byte[1024]; StringBuffer sb=new StringBuffer(); while((fis.read(buf))!=-1){ sb.append(new String(buf)); buf=new byte[1024];//重新生成,避免和上次读取的数据重复 } return sb.toString(); } /** *//** * 文件输出示例 */ public void PrintStreamDemo(){ try { FileOutputStream out=new FileOutputStream("D:/test.txt"); PrintStream p=new PrintStream(out); for(int i=0;i<10;i++) p.println("This is "+i+" line"); } catch (FileNotFoundException e) { e.printStackTrace(); } } }
发表评论
-
HTTPClient
2012-12-21 21:11 0public class RenRen { // The ... -
Export To Excel - Testing
2012-12-18 13:15 0MainTest ..... Map configM ... -
Export To Excel - ExcelUtils.java [Version 0.2]
2012-12-18 13:11 9import java.io.BufferedReader; ... -
Export To Excel - Action Oupt Excel
2012-11-23 13:49 10public String doAction(Work ... -
Export To Excel - ExcelUtils.java
2012-12-17 16:31 3import java.io.BufferedReader; ... -
Export To Excel - ExcelDAO.java
2012-12-18 12:55 5import java.sql.CallableStateme ... -
Export To Excel - commonExcelStyle.css
2012-12-18 12:55 6body { FONT-FAMILY: "Ari ... -
Export To Excel - ExcelConstants.java
2012-12-18 12:55 5/** * <p><b> * ... -
Export To Excel - ExcelRowList.java
2012-12-18 09:55 5import java.util.ArrayList; im ... -
Export To Excel - ExcelRowItem.java
2012-12-17 16:32 7import java.util.ArrayList; im ... -
Export To Excel - ExcelInfo.java
2012-11-23 13:50 8/** * <p><b> * ... -
Export To Excel - ExcelColList.java
2012-11-23 13:50 6import java.util.ArrayList; im ... -
Export To Excel - ExcelColItem.java
2012-11-23 13:50 11Version 0.1 import java.uti ... -
Export To Excel - ExcelCellItem.java
2012-11-23 13:49 7public class ExcelCellItem { ... -
Util
2012-12-17 16:32 676import java.io.BufferedReader; ... -
DMSUtil
2012-12-17 16:31 707import java.io.ByteArrayInputSt ... -
PooledConnectionManager
2012-12-17 16:31 926import java.sql.Connection; im ... -
FloatValidator
2012-10-05 13:42 771public class FloatValidator ext ... -
XmlHelper
2012-08-31 09:33 1267import java.io.ByteArrayInputSt ... -
XMLEncode
2012-08-30 18:43 1053public class XMLEncode implemen ...
相关推荐
file_util.py
本篇将详细解读一个名为“cw-util-file-encryptdecrypt.rar”的自开发文件加密解密工具,它采用了当前广泛使用的加密解密方法,适用于各类项目集成,并附带了具体的测试方案,旨在为用户提供高效且安全的数据保护...
BitVector CookieUtil DES FileUtil HttpUtil ImageFile JavaScriptString JsonHelper StringUtil Thumbnail Utils WebFileInfo
3. File Util:处理文件读写、文件夹创建、文件压缩和解压等操作,方便开发者进行本地数据存储。 4. Data Util:提供数据转换和解析功能,例如JSON和XML的解析,日期时间的格式化,以及加密解密等。 5. Log Util:...
1. **压缩文件/目录**:`zip_util`可能有一个或多个函数,如`compress_file`或`compress_directory`,用于将单个文件或整个目录压缩成ZIP文件。这些函数可能会接受文件路径、目标ZIP文件名以及压缩级别等参数。 2. ...
为了提高开发效率,程序员们常常会创建一些实用工具类库,如"C# Util",它整合了多种常用的功能模块,使得代码复用变得更为便捷。下面将详细阐述这个工具类库中的主要组成部分及其应用场景。 1. **Json**: JSON...
最后,fsck(File System Check)是用于检查和修复文件系统错误的实用程序。在Linux中,文件系统的完整性至关重要,因为任何数据损坏都可能导致严重的系统问题。fsck可以定期或者在系统启动时自动运行,对指定的文件...
import java.io.File; import java.util.ArrayList; import java.util.List; /** * * 项目名称:FileTest * 类名称:TreeFile * 类描述:将制定目录下得所有子目录和文件按树形输出 * 创建时间:2011-10-19 ...
rm: cannot remove `libtoolT': No such file or directory 解决: configure中#$RM "$cfgfile" 3、apr-util-1.6.1.tar 报错: fatal error:expat.h:no such file or directory #include compile interrupt ...
例如,可以使用`java.nio.file.Files`类的readAllBytes()方法读取整个文件到字节数组,或者使用`java.util.zip`包压缩和解压缩文件。 总的来说,Java Swing负责构建用户界面,IO负责数据的传输,而Util提供了许多...
例如,`readFileToString()`可以读取文件内容为字符串,`writeStringToFile()`则可以将字符串写入文件。 - 文件路径处理也是`FileUtil`的一部分,如获取绝对路径 (`getAbsolutePath()`)、判断文件是否存在 (`exists...
2. **文件MD5校验**:对于大文件,MD5Util可能还包含一个方法,如`calculateFileMD5(File file)`,用于计算文件的MD5值。这个过程涉及到读取文件内容并分块计算,最后将所有块的MD5值合并得到整个文件的MD5摘要。 3...
按照一定规则,读取EXCEL的数据 文档介绍:https://blog.csdn.net/weixin_43664254/category_9975078.html 自动化测试用例要怎么写文章里边写的
10. **File**: 表示文件和目录路径名的抽象表示形式,提供了文件和目录的基本操作。 11. **Scanner**: 用于从输入源(如键盘、文件)读取用户输入的数据。 12. **Objects**: 提供了一些实用的静态方法,如对象的...
### 使用 Java.util.zip 包实现数据压缩与解压 在计算机科学领域,数据压缩技术是一项重要的功能,它能够帮助减少存储空间的需求以及提高网络传输效率。本文将通过一系列的示例来详细介绍如何利用 Java 中的 `java....
例如,`readFileToString()`可以将整个文件内容读取为一个字符串,`writeStringToFile()`则可以将字符串写入到文件。此外,`exists()`和`mkdirs()`分别用于检查文件是否存在以及创建多级目录。在处理文件时,`...
在Java编程语言中,`java.util.zip` 是一个非常重要的包,它提供了处理各种压缩格式(如ZIP和GZ)的工具。在这个场景中,我们将深入探讨如何使用这个包来解压缩和压缩ZIP格式的文件。`java.util.zip` 包包含几个关键...
此外,还有C/C++源代码文件,如main.c、util.c等,它们包含了程序的主要逻辑和辅助函数。通过阅读这些源代码,开发者可以了解File-Tail如何实现文件监控,包括文件句柄管理、信号处理、内存管理等方面的知识。 在...
和`net.mindview.util.TextFile`。这表明这个库可能专注于提供打印和文本文件操作的工具。`Print`类可能包含一系列静态方法,用于格式化和输出信息到控制台或者日志文件。而`TextFile`类则可能封装了读取、写入和...