`

JAVA基础学习篇----FILE OPERATOR

阅读更多
JAVA文件操作相关:
  1. packagecom.bytecode.openexcel.util;
  2. importjava.io.*;
  3. publicclassFileOperate{
  4. publicFileOperate(){
  5. }
  6. /**
  7. *新建目录
  8. *
  9. *@paramfolderPath
  10. *String如c:/fqf
  11. *@returnboolean
  12. */
  13. publicvoidnewFolder(StringfolderPath){
  14. try{
  15. StringfilePath=folderPath;
  16. filePath=filePath.toString();
  17. java.io.FilemyFilePath=newjava.io.File(filePath);
  18. if(!myFilePath.exists()){
  19. myFilePath.mkdir();
  20. }
  21. }catch(Exceptione){
  22. System.out.println("新建目录操作出错");
  23. e.printStackTrace();
  24. }
  25. }
  26. /**
  27. *新建文件
  28. *
  29. *@paramfilePathAndName
  30. *String文件路径及名称如c:/fqf.txt
  31. *@paramfileContent
  32. *String文件内容
  33. *@returnboolean
  34. */
  35. publicvoidnewFile(StringfilePathAndName,StringfileContent){
  36. try{
  37. StringfilePath=filePathAndName;
  38. filePath=filePath.toString();
  39. FilemyFilePath=newFile(filePath);
  40. if(!myFilePath.exists()){
  41. myFilePath.createNewFile();
  42. }
  43. FileWriterresultFile=newFileWriter(myFilePath);
  44. PrintWritermyFile=newPrintWriter(resultFile);
  45. StringstrContent=fileContent;
  46. myFile.println(strContent);
  47. resultFile.close();
  48. }catch(Exceptione){
  49. System.out.println("新建文件操作出错");
  50. e.printStackTrace();
  51. }
  52. }
  53. /**
  54. *删除文件
  55. *
  56. *@paramfilePathAndName
  57. *String文件路径及名称如c:/fqf.txt
  58. *@paramfileContent
  59. *String
  60. *@returnboolean
  61. */
  62. publicvoiddelFile(StringfilePathAndName){
  63. try{
  64. StringfilePath=filePathAndName;
  65. filePath=filePath.toString();
  66. java.io.FilemyDelFile=newjava.io.File(filePath);
  67. myDelFile.delete();
  68. }catch(Exceptione){
  69. System.out.println("删除文件操作出错");
  70. e.printStackTrace();
  71. }
  72. }
  73. /**
  74. *删除文件夹
  75. *
  76. *@paramfilePathAndName
  77. *String文件夹路径及名称如c:/fqf
  78. *@paramfileContent
  79. *String
  80. *@returnboolean
  81. */
  82. publicvoiddelFolder(StringfolderPath){
  83. try{
  84. delAllFile(folderPath);//删除完里面所有内容
  85. StringfilePath=folderPath;
  86. filePath=filePath.toString();
  87. java.io.FilemyFilePath=newjava.io.File(filePath);
  88. myFilePath.delete();//删除空文件夹
  89. }catch(Exceptione){
  90. System.out.println("删除文件夹操作出错");
  91. e.printStackTrace();
  92. }
  93. }
  94. /**
  95. *删除文件夹里面的所有文件
  96. *
  97. *@parampath
  98. *String文件夹路径如c:/fqf
  99. */
  100. publicvoiddelAllFile(Stringpath){
  101. Filefile=newFile(path);
  102. if(!file.exists()){
  103. return;
  104. }
  105. if(!file.isDirectory()){
  106. return;
  107. }
  108. String[]tempList=file.list();
  109. Filetemp=null;
  110. for(inti=0;i<tempList.length;i++){
  111. if(path.endsWith(File.separator)){
  112. temp=newFile(path+tempList[i]);
  113. }else{
  114. temp=newFile(path+File.separator+tempList[i]);
  115. }
  116. if(temp.isFile()){
  117. temp.delete();
  118. }
  119. if(temp.isDirectory()){
  120. delAllFile(path+"/"+tempList[i]);//先删除文件夹里面的文件
  121. delFolder(path+"/"+tempList[i]);//再删除空文件夹
  122. }
  123. }
  124. }
  125. /**
  126. *复制单个文件
  127. *
  128. *@paramoldPath
  129. *String原文件路径如:c:/fqf.txt
  130. *@paramnewPath
  131. *String复制后路径如:f:/fqf.txt
  132. *@returnboolean
  133. */
  134. publicvoidcopyFile(StringoldPath,StringnewPath){
  135. try{
  136. intbytesum=0;
  137. intbyteread=0;
  138. Fileoldfile=newFile(oldPath);
  139. if(oldfile.exists()){//文件存在时
  140. InputStreaminStream=newFileInputStream(oldPath);//读入原文件
  141. FileOutputStreamfs=newFileOutputStream(newPath);
  142. byte[]buffer=newbyte[1444];
  143. intlength;
  144. while((byteread=inStream.read(buffer))!=-1){
  145. bytesum+=byteread;//字节数文件大小
  146. System.out.println(bytesum);
  147. fs.write(buffer,0,byteread);
  148. }
  149. inStream.close();
  150. }
  151. }catch(Exceptione){
  152. System.out.println("复制单个文件操作出错");
  153. e.printStackTrace();
  154. }
  155. }
  156. /**
  157. *复制整个文件夹内容
  158. *
  159. *@paramoldPath
  160. *String原文件路径如:c:/fqf
  161. *@paramnewPath
  162. *String复制后路径如:f:/fqf/ff
  163. *@returnboolean
  164. */
  165. publicvoidcopyFolder(StringoldPath,StringnewPath){
  166. try{
  167. (newFile(newPath)).mkdirs();//如果文件夹不存在则建立新文件夹
  168. Filea=newFile(oldPath);
  169. String[]file=a.list();
  170. Filetemp=null;
  171. for(inti=0;i<file.length;i++){
  172. if(oldPath.endsWith(File.separator)){
  173. temp=newFile(oldPath+file[i]);
  174. }else{
  175. temp=newFile(oldPath+File.separator+file[i]);
  176. }
  177. if(temp.isFile()){
  178. FileInputStreaminput=newFileInputStream(temp);
  179. FileOutputStreamoutput=newFileOutputStream(newPath
  180. +"/"+(temp.getName()).toString());
  181. byte[]b=newbyte[1024*5];
  182. intlen;
  183. while((len=input.read(b))!=-1){
  184. output.write(b,0,len);
  185. }
  186. output.flush();
  187. output.close();
  188. input.close();
  189. }
  190. if(temp.isDirectory()){//如果是子文件夹
  191. copyFolder(oldPath+"/"+file[i],newPath+"/"
  192. +file[i]);
  193. }
  194. }
  195. }catch(Exceptione){
  196. System.out.println("复制整个文件夹内容操作出错");
  197. e.printStackTrace();
  198. }
  199. }
  200. /**
  201. *移动文件到指定目录
  202. *
  203. *@paramoldPath
  204. *String如:c:/fqf.txt
  205. *@paramnewPath
  206. *String如:d:/fqf.txt
  207. */
  208. publicvoidmoveFile(StringoldPath,StringnewPath){
  209. copyFile(oldPath,newPath);
  210. delFile(oldPath);
  211. }
  212. /**
  213. *移动文件到指定目录
  214. *
  215. *@paramoldPath
  216. *String如:c:/fqf.txt
  217. *@paramnewPath
  218. *String如:d:/fqf.txt
  219. */
  220. publicvoidmoveFolder(StringoldPath,StringnewPath){
  221. copyFolder(oldPath,newPath);
  222. delFolder(oldPath);
  223. }
  224. }

分享到:
评论

相关推荐

    java-jdk1.7-jdk-7u80-windows-x64.zip

    6. **文件系统API**:Java 7引入了新的文件系统API(java.nio.file包),提供了更强大的文件操作功能,如路径操作、遍历目录树和文件属性查询等。 7. **Fork/Join框架**:这个并行计算框架允许开发者将大任务分解为...

    Java - The Well-Grounded Java Developer

    It covers key enhancements such as the new file system API (NIO.2), multi-catch exception handling, and the diamond operator for generics. - **New Features**: - **New File System API (NIO.2)**: ...

    operator-flink-mysql.zip

    标题 "operator-flink-mysql.zip" 暗示了这是一个关于使用Apache Flink与MySQL数据库进行数据源集成的项目。这个项目可能包含了实现Flink连接MySQL数据库所需的所有配置和代码。接下来,我们将深入探讨Flink与MySQL...

    Java jdk1.7.0-x64

    Java JDK 1.7.0-x64 是Oracle公司发布的Java Development Kit的64位版本,主要用于开发和运行Java应用程序。这个版本属于Java SE(标准版)7的一部分,提供了对Java语言、Java虚拟机(JVM)、Java类库以及开发工具的...

    javanotes7.pdf

    总而言之,这是一本面向初学者的Java编程教材,强调基础知识的传授,同时也紧跟Java技术的发展,特别是与JDK 7版本的对应。由于是面向非商业目的的教育出版物,它应该是免费提供的,并且可能通过网站等多种渠道方便...

    openjdk-7-fcs-src-b147-27_jun_2011.zip

    5. **文件系统API更新**:`java.nio.file`包提供了新的文件系统API,支持Path、Files和Paths类,提供了更强大的文件操作能力,如文件属性查询、权限控制等。 6. **改进的异常处理**:可以同时捕获多个异常类型,如`...

    java JDK1.7 window版本安装包

    - **改进的文件系统API**:引入了`java.nio.file`包,提供了更强大、更灵活的文件操作接口。 - **并行GC的改进**:提升了垃圾收集的性能,特别是对于大堆内存的管理。 6. **开发与运行Java程序** - 使用`javac`...

    1Z0-811 Exam Guide to Have a Cakewalk in Oracle Java SE Certific

    - **Ternary Operator:** Familiarize yourself with the ternary operator for concise conditional expressions. 4. **Other Important Areas:** - **Arrays and Collections:** Study the handling of arrays ...

    java7源码-Java7forAbsoluteBeginners:学习《Java7基础教程》的源代码

    这个"Java7源码-Java7forAbsoluteBeginners"的压缩包文件很可能是为了帮助初学者理解Java 7的基础概念而提供的配套实践资源。下面,我们将深入探讨Java 7的一些关键知识点。 1. **自动资源管理(Automatic Resource...

    Java语言教程案例.docx

    #### 一、Java基础教程详解 ##### 1. **基础语法和概念** Java 是一种广泛使用的高级编程语言,适用于多种平台。为了掌握 Java,了解其基本语法和概念至关重要。 - **Java 入门指南**([官方文档]...

    JAVA 1.7英文API

    通过深入学习和理解Java 1.7英文API,开发者可以更高效地编写代码,充分利用Java 7的新特性,并提升自己的编程能力。同时,阅读英文API也有助于跟踪最新的技术发展,为未来接触更高级的Java版本做好准备。

    java读取pdf(轻量级)

    Java语言在处理PDF文档时,通常需要借助第三方库来实现,因为Java标准库并不直接支持PDF的操作。在本文中,我们将探讨如何使用轻量级的Java库来读取PDF文件内容,以实现“java读取pdf(轻量级)”的目标。 首先,一...

    奇虎360 2016校园招聘 JAVA研发工程师笔试题.pdf

    在题目中的代码中,operator方法将StringBuffer x和y作为参数,append y到x上,然后将x赋值给y。最后,在main方法中,打印出a和b的值。由于StringBuffer是可变的,所以append操作会改变a的值,但b的值不变。因此,...

    java代码-Java5-7练习题

    总之,这个压缩包是一个很好的学习资源,对于想提升Java编程技能,特别是对Java 5到7新特性有需求的开发者来说,具有很高的参考价值。通过实践和理解这些练习,不仅可以巩固基础知识,还能提升问题解决能力。

    SCJP6 Sun Certificated Programmer for Java 6 Study Guide (Exam 310-065) 英文原版

    - **File Handling**: Creating, deleting, renaming, and checking file existence. - **Formatting and Parsing**: Formatting numbers and dates, parsing strings to specific formats. #### 7. Generics and ...

    简易计算器java代码实现

    总的来说,这个简易计算器项目的实现涉及到Java的基础语法,如类定义、方法、变量、输入/输出以及异常处理。对于初学者,这是一个很好的练习,可以巩固对Java基础知识的理解。同时,通过Eclipse这样的IDE进行开发,...

    Java语言编码规范

    ##### 11.1 Java源文件范例(Java Source File Example) ```java /** * This is an example Java source file that demonstrates * the use of conventions and best practices. */ package com.example; ...

    Java7 最新原版API

    2. **多路复用器(NIO.2)**:增强了Java的非阻塞I/O功能,提供了新的`java.nio.file`包,支持文件系统操作,如遍历目录、文件属性查询等,以及Path、Files和Paths类的引入。 3. **字符串开关(String Switch)**:...

Global site tag (gtag.js) - Google Analytics