/*
综合使用InputStreamReader和OutputStreamWriter
*/
@Test
public void test2(){
InputStreamReader isr = null;
OutputStreamWriter osw = null;
try {
//1.造文件、造流
File file1 = new File("dbcp.txt");
File file2 = new File("dbcp_gbk.txt");
FileInputStream fis = new FileInputStream(file1);
FileOutputStream fos = new FileOutputStream(file2);
isr = new InputStreamReader(fis,"utf-8");
osw = new OutputStreamWriter(fos,"gbk");
//2.读写过程
char[] cbuf = new char[20];
int len;
while ((len = isr.read(cbuf)) != -1){
osw.write(cbuf,0,len);
}
} catch (IOException e) {
e.printStackTrace();
} finally {
//3.关闭资源
if (isr != null) {
try {
isr.close();
} catch (IOException e) {
e.printStackTrace();
}
}
if (osw != null) {
try {
osw.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
[IO流]转换流实现文件的读入和写出
最新推荐文章于 2022-06-29 11:05:31 发布
此代码段展示了如何使用InputStreamReader和OutputStreamWriter进行文件的字符编码转换,从UTF-8编码的'dbcp.txt'读取内容,并将其转换为GBK编码写入'dbcp_gbk.txt'。在读写过程中,通过char数组进行缓冲,确保数据正确转换。

803

被折叠的 条评论
为什么被折叠?



