IO流 文件读取, 写入,和复制txt文件代码演示

时间:2022-06-18 16:03:44

f.isDirectory();

//获取目录下的文件名

String[] fileName=f.list();

//获取目录下的文件
File[] files=f.listFiles();


1、Java怎么读取文件

[java]  view plain  copy
  1. package com.yyb.file;  
  2.   
  3. import java.io.File;  
  4. import java.io.FileInputStream;  
  5. import java.io.InputStream;  
  6.   
  7. /* 
  8.  * 读取文件: 
  9.  * 1、找到指定的文件 
  10.  * 2、根据文件创建文件的输入流 
  11.  * 3、创建字节数组 
  12.  * 4、读取内容,放到字节数组里面 
  13.  * 5、关闭输入流 
  14.  */  
  15. public class FileRead {  
  16.   
  17.     public static void main(String[] args) {  
  18.         // 构建指定文件  
  19.         File file = new File("E:" + File.separator + "hello.txt");  
  20.         InputStream in = null;  
  21.         try {  
  22.             // 根据文件创建文件的输入流  
  23.             in = new FileInputStream(file);  
  24.             // 创建字节数组  
  25.             byte[] data = new byte[1024];  
  26.             // 读取内容,放到字节数组里面  
  27.             in.read(data);  
  28.             System.out.println(new String(data));  
  29.         } catch (Exception e) {  
  30.             e.printStackTrace();  
  31.         } finally {  
  32.             try {  
  33.                 // 关闭输入流  
  34.                 in.close();  
  35.             } catch (Exception e) {  
  36.                 e.printStackTrace();  
  37.             }  
  38.         }  
  39.     }  
  40.   
  41. }  


2、Java怎么写入文件

[java]  view plain  copy
  1. package com.yyb.file;  
  2.   
  3. import java.io.File;  
  4. import java.io.FileOutputStream;  
  5. import java.io.OutputStream;  
  6.   
  7. /* 
  8.  * 写入文件: 
  9.  * 1、找到指定的文件 
  10.  * 2、根据文件创建文件的输出流 
  11.  * 3、把内容转换成字节数组 
  12.  * 4、向文件写入内容 
  13.  * 5、关闭输入流 
  14.  */  
  15. public class FileWriter {  
  16.   
  17.     public static void main(String[] args) {  
  18.         // 构建指定文件  
  19.         File file = new File("E:" + File.separator + "hello.txt");  
  20.         OutputStream out = null;  
  21.         try {  
  22.             // 根据文件创建文件的输出流  
  23.             out = new FileOutputStream(file);  
  24.             String message = "我是好人。";  
  25.             // 把内容转换成字节数组  
  26.             byte[] data = message.getBytes();  
  27.             // 向文件写入内容  
  28.             out.write(data);  
  29.         } catch (Exception e) {  
  30.             e.printStackTrace();  
  31.         } finally {  
  32.             try {  
  33.                 // 关闭输出流  
  34.                 out.close();  
  35.             } catch (Exception e) {  
  36.                 e.printStackTrace();  
  37.             }  
  38.         }  
  39.     }  
  40.   
  41. }  



3、Java怎么复制文件

[java]  view plain  copy
  1. <span style="font-size:18px;">package com.yyb.file;  
  2.   
  3. import java.io.File;  
  4. import java.io.FileInputStream;  
  5. import java.io.FileOutputStream;  
  6. import java.io.InputStream;  
  7. import java.io.OutputStream;  
  8. /* 
  9.  * 实现思路: 
  10.  * 1、构建源文件与目标文件 
  11.  * 2、源文件创建输入流,目标文件创建输出流 
  12.  * 3、创建字节数组 
  13.  * 4、使用循环,源文件读取一部分内容,目标文件写入一部分内容,直到写完所有内容 
  14.  * 5、关闭源文件输入流,目标文件输出流 
  15.  */  
  16. public class FileCopy {  
  17.   
  18.     public static void main(String[] args) {  
  19.         // 构建源文件  
  20.         File file = new File("E:" + File.separator + "HelloWorld.txt");  
  21.         // 构建目标文件  
  22.         File fileCopy = new File("D:" + File.separator + "HelloWorld");  
  23.         InputStream in = null;  
  24.         OutputStream out = null;  
  25.         try {  
  26.             // 目标文件不存在就创建  
  27.             if (!(fileCopy.exists())) {  
  28.                 fileCopy.createNewFile();  
  29.             }  
  30.             // 源文件创建输入流  
  31.             in = new FileInputStream(file);  
  32.             // 目标文件创建输出流  
  33.             out = new FileOutputStream(fileCopy, true);  
  34.             // 创建字节数组  
  35.             byte[] temp = new byte[1024];  
  36.             int length = 0;  
  37.             // 源文件读取一部分内容  
  38.             while ((length = in.read(temp)) != -1) {  
  39.                 // 目标文件写入一部分内容  
  40.                 out.write(temp, 0, length);  
  41.             }  
  42.         } catch (Exception e) {  
  43.             e.printStackTrace();  
  44.         } finally {  
  45.             try {  
  46.                 // 关闭文件输入输出流  
  47.                 in.close();  
  48.                 out.close();  
  49.             } catch (Exception e) {  
  50.                 e.printStackTrace();  
  51.             }  
  52.         }  
  53.     }  
  54.   
  55. }</span><span style="font-size: 24px;">  
  56. </span>