转换流也是处理流的一种,分为OutputStreamWriter、InputStreamReader两种,是将字节流转化为字符流进行读取或者写入。
public class TestTransForm1 {
public static void main(String[] args) {
try {
//将OutputStream转换成Writer
OutputStreamWriter osw = new OutputStreamWriter(
new FileOutputStream("d:\\bak\\char.txt"));//将字节流包装在转换流里,没有指定编码时就用当前系统默认编码
osw.write("mircosoftibmsunapplehp");
System.out.println(osw.getEncoding());
osw.close();
osw = new OutputStreamWriter(
new FileOutputStream("d:\\bak\\char.txt", true),//true代表在原来的文件上追加,不然会覆盖
"ISO8859_1"); // 字符编码
osw.write("mircosoftibmsunapplehp");
System.out.println(osw.getEncoding());
osw.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
public class TestTransForm2 {
public static void main(String args[]) {
InputStreamReader isr =
new InputStreamReader(System.in);//System.in接收键盘的输入
BufferedReader br = new BufferedReader(isr);//再封装一层缓冲流
String s = null;
try {
s = br.readLine();
while(s!=null){
if(s.equalsIgnoreCase("exit")) break;
System.out.println(s.toUpperCase());
s = br.readLine();
}
br.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}