一、转换流的使用
1.将字节流转为字符流:
FileInputStream fis = new FileInputStream("字节流文件");
InputStreamReader isr = new InputStreamReader(fis);
char[] c = new char[1024];
int len = 0;
while((len = isr.read(c)) != -1){
System.out.println(new String(c,0,len));
}
isr.close();
fis.close();
2.转码:
FileInputStream fis = new FileInputStream("gbk格式文件");
InputStreamReader isr = new InputStreamReader(fis,"gbk");
FileOutputStream fos = new FileOutputStream("utf-8格式文件");
OutputStreamWriter osw = new OutputStreamWriter(fos,"utf-8");
char[] c = new char[1024];
int len = 00;
while((len = isr.read(c)) != -1){
osw.write(new String(b,0,len));
}
osw.close();
isr.close();
fos.close();
fis.close();
3.注意点:
1)读取文件内容是,输入流的格式必须跟输出流顺序的编码格式一致
2)转码的InputStreamReader形参传的编码与文件编码格式相同