Java转换流:
java中最常见的便是数据类型间的转换了,先来简单介绍一下什么是转换流:其实就是将一个类型转变成另一个类型,来完成更方便的操作。
OutputStreamWriter:是Writer的子类,将输出的字符流变为字节流,即将一个字符流的输出对象变为字节流输出对象。
InputStreamReader:是Reader的子类,将输入的字节流变为字符流,即将一个字节流的输入对象变为字符流的输入对象。
可以这样理解:我们在代码中操作是字符(串)容易操作,但是向文件中写入是字节更容易,所以我们操作字符,使用转换类自动转为字节输出到文件中,从文件中读取字节后,我们使用转换类转成字符到代码中。

写入文件:使用字符串向文件中写入字符串L O V E
package Demo0321;
import java.io.*;
public class OutStreamWriterDemo {
public static void main(String[] args) {
File file = new File("e:"+File.separator+"a"+File.separator+"test02.xml");
String str = "L O V E ";
Writer w = null;
try {
w = new OutputStreamWriter(new FileOutputStream(file));
}catch(Exception e) {
e.printStackTrace();
}
try {
w.write(str);
w.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
读取文件:从文件中读取写入到文件中的L O V E
package Demo0321;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.Reader;
public class InputStreamReaderDemo {
public static void main(String args[]){
File file = new File("e:"+File.separator+"a"+File.separator+"test02.xml");
Reader r = null;
char[] ch = new char[(int)file.length()];
try {
r = new InputStreamReader(new FileInputStream(file));
r.read(ch);
}catch(Exception e) {
e.printStackTrace();
}
System.out.println(new String(ch));
}
}
网友评论