博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
java常见文件操作
阅读量:5293 次
发布时间:2019-06-14

本文共 9645 字,大约阅读时间需要 32 分钟。

  收集整理的java常见文件操作,方便平时使用:

 

//1.创建文件夹   //import java.io.*;   File myFolderPath = new File(str1);   try {       if (!myFolderPath.exists()) {          myFolderPath.mkdir();       }   }   catch (Exception e) {       System.out.println("新建目录操作出错");       e.printStackTrace();   }
//2.创建文件   //import java.io.*;   File myFilePath = new File(str1);   try {       if (!myFilePath.exists()) {           myFilePath.createNewFile();       }       FileWriter resultFile = new FileWriter(myFilePath);       PrintWriter myFile = new PrintWriter(resultFile);       myFile.println(str2);       resultFile.close();   }   catch (Exception e) {       System.out.println("新建文件操作出错");       e.printStackTrace();   }
//3.删除文件   //import java.io.*;   File myDelFile = new File(str1);   try {       myDelFile.delete();   }   catch (Exception e) {       System.out.println("删除文件操作出错");       e.printStackTrace();   }
//4.删除文件夹   //import java.io.*;   File delFolderPath = new File(str1);   try {       delFolderPath.delete(); //删除空文件夹   }   catch (Exception e) {       System.out.println("删除文件夹操作出错");       e.printStackTrace();   }
//5.删除一个文件下夹所有的文件夹   //import java.io.*;   File delfile=new File(str1);   File[] files=delfile.listFiles();   for(int i=0;i
//6.清空文件夹   //import java.io.*;   File delfilefolder=new File(str1);   try {       if (!delfilefolder.exists()) {           delfilefolder.delete();       }       delfilefolder.mkdir();   }   catch (Exception e) {       System.out.println("清空目录操作出错");       e.printStackTrace();   }
//7.读取文件   //import java.io.*;   // 逐行读取数据   FileReader fr = new FileReader(str1);   BufferedReader br = new BufferedReader(fr);   String str2 = br.readLine();   while (str2 != null) {       str3       str2 = br.readLine();   }   br.close();   fr.close();
//8.写入文件   //import java.io.*;   // 将数据写入文件   try {       FileWriter fw = new FileWriter(str1);       fw.write(str2);       fw.flush();       fw.close();    } catch (IOException e) {       e.printStackTrace();   }
//9.写入随机文件   //import java.io.*;   try {       RandomAcessFile logFile=new RandomAcessFile(str1,"rw");       long lg=logFile.length();       logFile.seek(str2);       logFile.writeByte(str3);   }catch(IOException ioe){       System.out.println("无法写入文件:"+ioe.getMessage());   }
//10.读取文件属性   //import java.io.*;   // 文件属性的取得   File f = new File(str1);   if (af.exists()) {       System.out.println(f.getName() + "的属性如下: 文件长度为:" + f.length());       System.out.println(f.isFile() ? "是文件" : "不是文件");       System.out.println(f.isDirectory() ? "是目录" : "不是目录");       System.out.println(f.canRead() ? "可读取" : "不");       System.out.println(f.canWrite() ? "是隐藏文件" : "");       System.out.println("文件夹的最后修改日期为:" + new Date(f.lastModified()));       } else {       System.out.println(f.getName() + "的属性如下:");       System.out.println(f.isFile() ? "是文件" : "不是文件");       System.out.println(f.isDirectory() ? "是目录" : "不是目录");       System.out.println(f.canRead() ? "可读取" : "不");       System.out.println(f.canWrite() ? "是隐藏文件" : "");       System.out.println("文件的最后修改日期为:" + new Date(f.lastModified()));   }   if(f.canRead()){       str2   }   if(f.canWrite()){       str3   }
//11.写入属性   //import java.io.*;   File filereadonly=new File(str1);   try {       boolean b=filereadonly.setReadOnly();   }   catch (Exception e) {       System.out.println("拒绝写访问:"+e.printStackTrace());   }
//12.枚举一个文件夹中的所有文件   //import java.io.*;   //import java.util.*;   LinkedList folderList = new LinkedList();   folderList.add(str1);   while (folderList.size() > 0) {       File file = new File(folderList.peek());       folderList.removeLast();       File[] files = file.listFiles();       ArrayList fileList = new ArrayList();       for (int i = 0; i < files.length; i++) {           if (files[i].isDirectory()) {               folderList.add(files[i].getPath());           } else {               fileList.add(files[i]);           }       }       for (File f : fileList) {           str2=f.getAbsoluteFile();           str3       }   }
//13.复制文件夹    //import java.io.*;   //import java.util.*;   LinkedList folderList = new LinkedList();   folderList.add(str1);   LinkedList folderList2 = new LinkedList();   folderList2.add(str2+ str1.substring(str1.lastIndexOf("\\")));   while (folderList.size() > 0) {       (new File(folderList2.peek())).mkdirs(); // 如果文件夹不存在 则建立新文件夹       File folders = new File(folderList.peek());       String[] file = folders.list();       File temp = null;       try {           for (int i = 0; i < file.length; i++) {               if (folderList.peek().endsWith(File.separator)) {                   temp = new File(folderList.peek() + File.separator                   + file[i]);               } else {                   temp = new File(folderList.peek() + File.separator + file[i]);               }               if (temp.isFile()) {                   FileInputStream input = new FileInputStream(temp);                   FileOutputStream output = new FileOutputStream(                   folderList2.peek() + File.separator + (temp.getName()).toString());                   byte[] b = new byte[5120];                   int len;                   while ((len = input.read(b)) != -1) {                       output.write(b, 0, len);                   }                   output.flush();                   output.close();                   input.close();               }               if (temp.isDirectory()) {// 如果是子文件夹                   for (File f : temp.listFiles()) {                       if (f.isDirectory()) {                           folderList.add(f.getPath());                           folderList2.add(folderList2.peek()                           + File.separator + f.getName());                       }                   }               }           }       } catch (Exception e) {       //System.out.println("复制整个文件夹内容操作出错");           e.printStackTrace();       }       folderList.removeFirst();       folderList2.removeFirst();   }
//14.复制一个文件夹下所有的文件夹到另一个文件夹下   //import java.io.*;   //import java.util.*;   File copyfolders=new File(str1);   File[] copyfoldersList=copyfolders.listFiles();   for(int k=0;k
//15.移动文件夹   //import java.io.*;   //import java.util.*;   LinkedList folderList = new LinkedList();   folderList.add(str1);   LinkedList folderList2 = new LinkedList();   folderList2.add(str2 + str1.substring(str1.lastIndexOf("\\")));   while (folderList.size() > 0) {       (new File(folderList2.peek())).mkdirs(); // 如果文件夹不存在 则建立新文件夹       File folders = new File(folderList.peek());       String[] file = folders.list();       File temp = null;       try {           for (int i = 0; i < file.length; i++) {               if (folderList.peek().endsWith(File.separator)) {                   temp = new File(folderList.peek() + File.separator + file[i]);               } else {                   temp = new File(folderList.peek() + File.separator + file[i]);               }               if (temp.isFile()) {                   FileInputStream input = new FileInputStream(temp);                   FileOutputStream output = new FileOutputStream(                   folderList2.peek() + File.separator + (temp.getName()).toString());                   byte[] b = new byte[5120];                   int len;                   while ((len = input.read(b)) != -1) {                       output.write(b, 0, len);                   }                   output.flush();                   output.close();                   input.close();                   if (!temp.delete())                   System.out.println("删除单个文件操作出错!");               }               if (temp.isDirectory()) {// 如果是子文件夹                   for (File f : temp.listFiles()) {                       if (f.isDirectory()) {                           folderList.add(f.getPath());                           folderList2.add(folderList2.peek() + File.separator + f.getName());                       }                   }               }           }       } catch (Exception e) {           // System.out.println("复制整个文件夹内容操作出错");           e.printStackTrace();       }       folderList.removeFirst();       folderList2.removeFirst();   }   File f = new File(str1);   if (!f.delete()) {       for (File file : f.listFiles()) {           if (file.list().length == 0) {               System.out.println(file.getPath());               file.delete();           }       }   }
//16.移动一个文件夹下所有的文件夹到另一个目录下   //import java.io.*;   //import java.util.*;   File movefolders=new File(str1);   File[] movefoldersList=movefolders.listFiles();   for(int k=0;k
//17.以一个文件夹的框架在另一个目录创建文件夹和空文件   //import java.io.*;   //import java.util.*;   boolean b=false;//不创建空文件   ArrayListfolderList=new ArrayList();   folderList.add(str1);   ArrayListfolderList2=new ArrayList();   folderList2.add(str2);   for(int j=0;j
//18.复制文件   //import java.io.*;    int bytesum = 0;    int byteread = 0;    File oldfile = new File(str1);    try {    if (oldfile.exists()) { //文件存在时    FileInputStream inStream = new FileInputStream(oldfile); //读入原文件    FileOutputStream fs = new FileOutputStream(new File(str2,oldfile.getName()));    byte[] buffer = new byte[5120];    int length;    while ( (byteread = inStream.read(buffer)) != -1) {    bytesum += byteread; //字节数 文件大小    System.out.println(bytesum);    fs.write(buffer, 0, byteread);    }    inStream.close();    }    }    catch (Exception e) {    System.out.println("复制单个文件操作出错");    e.printStackTrace();    }
//19.复制一个文件夹下所有的文件到另一个目录   //import java.io.*;   File copyfiles=new File(str1);   File[] files=copyfiles.listFiles();   for(int i=0;i
//20.提取扩展名     String str2=str1.substring(str1.lastIndexOf(".")+1);

 

转载于:https://www.cnblogs.com/caoleiCoding/p/6404936.html

你可能感兴趣的文章
81、iOS本地推送与远程推送详解
查看>>
C#基础_注释和VS常用快捷键(一)
查看>>
虚拟DOM
查看>>
uva 11468 Substring
查看>>
自建数据源(RSO2)、及数据源增强
查看>>
BootStrap2学习日记2--将固定布局换成响应式布局
查看>>
关于View控件中的Context选择
查看>>
2018icpc徐州OnlineA Hard to prepare
查看>>
R语言-rnorm函数
查看>>
Spark的启动进程详解
查看>>
Java 字符终端上获取输入三种方式
查看>>
javascript 简单工厂
查看>>
java调用oracle存储过程,返回结果集
查看>>
使用命令创建数据库和表
查看>>
数据库的高级查询
查看>>
HttpClient(一)-- HelloWorld
查看>>
Android 利用Sharp样式设置文本框EditText圆角形状
查看>>
[YTU]_2443 ( C++习题 复数类--重载运算符3+)
查看>>
sdut_1189
查看>>
归并排序
查看>>