【IO流】java IO输入输出复习


因为图太大截不下就分开截了。




练习小栗子:创建文件夹file1,将该文件夹中的2.txt 复制到1.txt

public class copyFile {
	
	public void copyTxt() throws IOException {
		int num=0;
      File file1=new File("D:/file1/1.txt");
      File file2=new File("D:/file1/2.txt");
      BufferedReader bfRead;
      BufferedWriter bfWriter;
      bfWriter=new BufferedWriter(new FileWriter(file2));
      char[]arry=new char[1024];
      FileReader fRead=new FileReader(file1);
      bfRead=new BufferedReader(fRead);
      
      while((num=bfRead.read(arry))!=-1){
    	  bfWriter.write(arry,0,num);
      }
      bfWriter.close();
      bfRead.close();
	 }
	
	 public void copyJpg() throws IOException {
      File file1=new File("D:/file1/1.jpg");
      File file2=new File("D:/file1/2.jpg");
      FileInputStream bfRead=new FileInputStream(file1);
      FileOutputStream bfWriter=new FileOutputStream(file2);
      byte[]arry=new byte[1024];
      int count=0;
      while((count=bfRead.read(arry))!=-1){
      
    	  bfWriter.write(arry,0,count);
      }
      bfWriter.close();
      bfRead.close();
	}
	 
}

public abstract class Test1 {

	 public static void main(String[] args) throws IOException {
		File file1=new File("D:/file1");
		file1.mkdir(); //创建一个文件夹
		File[] fileArr=file1.listFiles();
		for(File f:fileArr){
			System.out.println(f.getName());
		}
		
		String str;
		System.out.println("请输入需要复制的文件名:");
		BufferedReader buf=new BufferedReader(new InputStreamReader(System.in));
		str=buf.readLine();
		if(str.equals("1.txt")){
			new copyFile().copyTxt();
		}
		if(str.equals("1.jpg")){
			new copyFile().copyJpg();
		}
         buf.close();
         File[]fileArr2=file1.listFiles();
         for(File f:fileArr2){
        	 System.out.println(f.getName());
         }
	 
	 }
	
}




阅读更多
版权声明:本文为博主原创文章,如需转载请标明来源。 https://blog.csdn.net/sinat_35821285/article/details/79978832
个人分类: JAVA IO
上一篇【多线程】线程池的使用
下一篇【IO流】序列化与反序列化
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭
关闭