--------------------------------java字节流转换成字符流-------------------------------
InputStreamReader是字节流通向字符流的桥梁。
范例:把从键盘输入的文本写入到文件中
public class ScannerDemo {
public static void main(String[] args) {
//创建Scanner对象
Scanner sc = new Scanner(System.in);
BufferedWriter bw = null;
try {
bw = new BufferedWriter(new FileWriter("c.txt"));
String line = null;
while((line = sc.nextLine()) != null) {
//给出退出条件
if("exit".equals(line)) {
break;
}
bw.write(line);
bw.newLine();
//释放缓冲区
bw.flush();
}
} catch (IOException e) {
e.printStackTrace();
}finally {
try {
if(bw != null)
bw.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
=============================================================
范例:把字节流转换成字符流
public class ConverterInDemo {
public static void main(String[] args) {
InputStream is = System.in;
//要想使用字符流的高效缓冲区来操作字节流需要转换
BufferedReader br = new BufferedReader(new InputStreamReader(is));
//定义要写入的文件流
BufferedWriter bw = null;
String line = null;
try {
bw = new BufferedWriter(new FileWriter("b.txt"));
while((line = br.readLine()) != null) {
if("exit".equals(line))
break;
bw.write(line);
bw.newLine();
bw.flush();
}
} catch (IOException e) {
e.printStackTrace();
}finally {
try {
if(br != null)
br.close();
if(bw !=null)
bw.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
}