首页 > 其他 > 详细

IO流,字节流复制文件,字符流+缓冲复制文件

时间:2019-12-24 13:43:53      阅读:73      评论:0      收藏:0      [点我收藏+]

技术分享图片

JAVAIO如果按流向分:输入流和输出流两种

          输入流的基类:InputStream   Reader

          输出流的基类:OutputStream   Writer

    如果按数据单元划分:字节流和字符流

          字节流输入输出的基类:InputStream  OutputStream

          字符流输入输出的基类:Reader   Writer

 

字节流复制文件内容

public static void main(String[] args) {
		//字节流复制文件内容
		InputStream io=null;
		OutputStream os=null;
		try {
			io=new FileInputStream("D:/a.txt");
			os=new FileOutputStream("D:/c.txt");
			int a=0;
			byte[] b=new byte[1024];
			while((a=io.read(b))!=-1){
				os.write(b,0,a);
			}
		} catch (FileNotFoundException e) {
			e.printStackTrace();
		} catch (IOException e) {
			e.printStackTrace();
		}finally{
			try {
				os.close();
				io.close();
			} catch (IOException e) {
				e.printStackTrace();
			}
		}
	}
}

  注意事项:java 的路径符号是:“/” “\\”  而我们的系统路径符号是:“\”  读取和写入文件完毕时记得关机流,否则会读取不了文件内容

 

字符流+缓冲复制文件内容

public static void main(String[] args) {
		//字符流+缓冲复制文件文件内容
		Reader read=null;
		BufferedReader br=null;
		Writer write=null;
		BufferedWriter bw=null;
		
		try {
			read=new FileReader("D:/a.txt");
			br=new BufferedReader(read);
			write=new FileWriter("D:/d.txt");
			bw=new BufferedWriter(write);
			String s="";
			while((s=br.readLine())!=null){
				bw.write(s);
			}
		} catch (FileNotFoundException e) {
			e.printStackTrace();
		} catch (IOException e) {
			e.printStackTrace();
		}finally{
			try {
				bw.close();
				write.close();
				br.close();
				read.close();
			} catch (IOException e) {
				e.printStackTrace();
			}
		}
	}
}

  注意事项:关流时记得按顺序:先开的后关,后开的先关

IO流,字节流复制文件,字符流+缓冲复制文件

原文:https://www.cnblogs.com/LittleBoys/p/12090904.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!