标签:字符 转换 字节 Transition IO new InputStreamReader OutputStreamWriter
IO的转换流
1- 转换流的理解:
1-转换流
将"字节流"和"字符流"相互转化
用处:读取的是utf-8 ==> 输出变成gbk
2- InputStreamReader、OutputStreamWriter的理解
InputStreamReader --> 将"字节流"转换为"字符流"。是"字节流"通向"字符流"的桥梁
OutputStreamWriter -->将"字符流"转换为"字节流"。(这里注意是将"字符流")是"字符流"通向"字节流"的桥梁
2- 转换流的使用
(我的案例:读取"UTF-8"文件 ---> 放回出"GBK文件"类型)
//本来为了安全,应该要写try-catch,为了代码简洁,略了
public void test() throws Exception {
FileInputStream fileInputStream = new FileInputStream("/Users/ccc/Desktop/testIO/hello.txt");
FileOutputStream fileOutputStream = new FileOutputStream("/Users/ccc/Desktop/testIO/hello-Translation.txt");
//包一个"转化流"
InputStreamReader inputStreamReader = new InputStreamReader(fileInputStream, "UTF-8");
OutputStreamWriter outputStreamWriter = new OutputStreamWriter(fileOutputStream, "gbk");
//读写
char[] cbuf = new char[1024];
int len;
while ((len = inputStreamReader.read(cbuf)) != -1) {
outputStreamWriter.write(cbuf);
}
inputStreamReader.close();
outputStreamWriter.close();
}
标签:字符,转换,字节,Transition,IO,new,InputStreamReader,OutputStreamWriter 来源: https://www.cnblogs.com/chen-zhou1027/p/16375861.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。