import java.io.*;
/**
* 转换流的使用:
* 1、转换流:属于字符流
* InputStreamReader:将一个字节的输入流转换为字符的输入流
* OutputStreamWriter:将一个字符的输出流转换为字节的输出流
* 2、作用:提供字节流与字符流之间的转换
* 3、解码:字节、字节数组--->字符数组、字符串
* 编码:字符数组、字符串--->字节、字节数组
*/
class Test{
//功能实现:用UTF-8格式读入字符文件,再以gbk格式复制一份字符文件
public static void main(String[] args){
FileInputStream fis=null;
FileOutputStream fos=null;
InputStreamReader isr=null;
OutputStreamWriter osw=null;
try {
File file1 = new File("file.txt");
File file2 = new File("file_gbk.txt");
fis = new FileInputStream(file1);
fos = new FileOutputStream(file2);
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);
}
}catch(IOException 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();
}
}
if(fos!=null){
try{
fos.close();
}catch (IOException e){
e.printStackTrace();
}
}
if(fis!=null){
try{
fis.close();
}catch(IOException e){
e.printStackTrace();
}
}
}
}
}
Java转换流的代码实现
最新推荐文章于 2023-07-08 16:32:46 发布