IO流13 --- 转换流实现文件复制 --- 技术搬运工(尚硅谷)

 ̄綄美尐妖づ 提交于 2019-12-02 03:03:40

InputStreamReader 将字节输入流转换为字符输入流

OutputStreamWriter 将字符输出流转换为字节输出流

@Test
public void test2() {
	//转换流
	InputStreamReader isr = null;
	OutputStreamWriter osw = null;
	
	try {
		//节点流
		FileInputStream fis = new FileInputStream("水浒传.txt");
		FileOutputStream fos = new FileOutputStream("水浒传_gbk.txt");         //转换流		isr = new InputStreamReader(fis, "utf-8");
		osw = new OutputStreamWriter(fos, "gbk");
		//复制文件
		char[] cbuf = new char[20];
		int len;
		while ((len = isr.read(cbuf)) != -1) {
			osw.write(cbuf, 0, len);
		} 
		System.out.println("复制成功");
	} catch (Exception e) {
		e.printStackTrace();
	} finally {
		if(osw != null) {
			try {
				osw.close();
			} catch (IOException e) {
				e.printStackTrace();
			}
		}
		if(isr != null) {
			try {
				isr.close();
			} catch (IOException e) {
				e.printStackTrace();
			}
		}
	}
}

  

 

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!