转换流
- 桥转换流 (InputStreamReader(字节流->字符流)/OutputStreamWriter(字符流->字节流))
- 可将字节流转换为字符流
- 可设置字符的编码方式
InputStreamReader读取文件,指定使用的编码
package com.io.zifu;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStreamReader;
/**
* 使用InputStreamReader读取文件,指定使用的编码
*/
public class Demo7 {
public static void main(String[] args) throws IOException {
// 创建InputStreamReader对象,字节流->字符流
FileInputStream fr = new FileInputStream("E:\\桌面\\aaa.txt");
InputStreamReader isr = new InputStreamReader(fr,"utf-8");
// 读取文件
int data = 0;
while ((data=isr.read())!=-1){
System.out.print((char) data);
}
// 关闭
isr.close();
}
}
OutputStreamWriter
package com.io.zhl;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStreamWriter;
/**
* OutputStreamWriter 写入文件,使用指定的编码
*/
public class Demo2 {
public static void main(String[] args) throws IOException {
// 创建OutputStreamWriter对象
FileOutputStream fos = new FileOutputStream("E:\\桌面\\aaa.txt");
OutputStreamWriter osw = new OutputStreamWriter(fos,"utf-8");
// 写入
for (int i = 0; i < 10; i++) {
osw.write("加油学习Java\n");
}
// 关闭
osw.close();
System.out.println("执行完毕");
}
}