java io 转换流_Java编程IO流中的转换流
對于IO流中的轉(zhuǎn)換流,顧名思義,就是將字符流轉(zhuǎn)換成字節(jié)流或者是將字節(jié)流轉(zhuǎn)換成字符流的對象。
那么有時(shí)候我們得到的是一個(gè)字符流,但是我們又需要進(jìn)行一些計(jì)算之類的,或者我們得到的是一個(gè)字節(jié)流,但是我們又需要進(jìn)行一些匹配或者是其他使用的時(shí)候,我們就可能會用到轉(zhuǎn)換流,所以轉(zhuǎn)換流對于我們來說是非常方便實(shí)用的。
既然轉(zhuǎn)換劉是將字符流轉(zhuǎn)換成字節(jié)流或者是將字節(jié)流轉(zhuǎn)換成字符流的對象,所以我們就分別用OutputStreamWriter和InputStreamReader來表示。
首先來說說InputStreamReader字節(jié)流轉(zhuǎn)換成字符流:
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
public class Demo {
public static void main(String[] args) throws IOException{
//使用輸入設(shè)備輸入字符流
InputStream ins = System.in;
//將輸入的字符流信息轉(zhuǎn)換成字節(jié)流
InputStreamReader insr = new InputStreamReader(ins);
//將轉(zhuǎn)換后的數(shù)據(jù)存儲到緩沖區(qū)
BufferedReader bufr = new BufferedReader(insr);
String str = null;
while((str=bufr.readLine())!=null){
System.out.println(str.toUpperCase());//toUpperCase()使用默認(rèn)語言環(huán)境的規(guī)則將此 String 中的所有字符都轉(zhuǎn)換為大寫。
}
bufr.close();
}
}
然后來講講OutputStreamWriter字節(jié)流轉(zhuǎn)換成字符流
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.io.OutputStreamWriter;
public class Demo {
public static void main(String[] args) throws IOException{
InputStream ins = System.in;
InputStreamReader insr = new InputStreamReader(ins);
BufferedReader bufr = new BufferedReader(insr);
OutputStream outs = System.out;
OutputStreamWriter outsw = new OutputStreamWriter(outs);
BufferedWriter bufw = new BufferedWriter(outsw);
String line = null;
while((line=bufr.readLine())!=null){
bufw.write(line.toUpperCase());
bufw.newLine();
bufw.flush();
}
bufr.close();
bufw.close();
}
}
精簡一下:
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
public class Demo {
public static void main(String[] args) throws IOException{
BufferedReader bufr = new BufferedReader(new InputStreamReader(System.in));
BufferedWriter bufw = new BufferedWriter(new OutputStreamWriter(System.out));
String line = null;
while((line=bufr.readLine())!=null){
bufw.write(line.toUpperCase());
bufw.newLine();
bufw.flush();
}
bufr.close();
bufw.close();
}
}
總結(jié)
以上是生活随笔為你收集整理的java io 转换流_Java编程IO流中的转换流的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: linux java 获取路径怎么写_l
- 下一篇: java 添加等待时间_Java中线程等