InputStreamReader和 OutputStreamWriter
10年積累的成都網(wǎng)站設(shè)計、做網(wǎng)站經(jīng)驗,可以快速應(yīng)對客戶對網(wǎng)站的新想法和需求。提供各種問題對應(yīng)的解決方案。讓選擇我們的客戶得到更好、更有力的網(wǎng)絡(luò)服務(wù)。我雖然不認(rèn)識你,你也不認(rèn)識我。但先網(wǎng)站制作后付款的網(wǎng)站建設(shè)流程,更有麻山免費(fèi)網(wǎng)站建設(shè)讓你可以放心的選擇與我們合作。new InputStreamReader(字節(jié)流,"UTF-8") //指定模式
將字節(jié)流轉(zhuǎn)換為字符流,方便處理,比如能使用BufferedReader處理流
可以處理字符集:InputStreamReader isr=new InputStreamReader(字節(jié)流,"UTF-8");
網(wǎng)絡(luò)流:new URL("http://www.baidu.com").openStream(),這是一個字節(jié)流
用裝飾器裝飾轉(zhuǎn)換流轉(zhuǎn)換成的字符流:BufferedReader reader=new BufferedReader(new InputStreamReader(new URL("http://www.baidu.com").openStream(),"UTF-8"))
用轉(zhuǎn)換流來讀取鍵盤輸入輸出的字節(jié)流:
try(BufferedReader isr=new BufferedReader( new
InputStreamReader(System.in));
BufferedWriter osw=new BufferedWriter(new OutputStreamWriter(System.out));){
//鍵盤循環(huán)讀取,exit退出
String s=" ";
while(!s.equals("exit"))
{
s=isr.readLine(); //按行讀取
osw.write(s); //寫出
osw.newLine();
osw.flush(); //強(qiáng)制刷新,因為數(shù)據(jù)太小無法輸出,要滿足一定kb才會自動輸出
}
}
catch(IOException e)
{
System.out.println("操作異常");
}
操作網(wǎng)絡(luò)流,讀取百度源碼:
使用裝飾器:
//使用轉(zhuǎn)換流,讀取中文不會亂碼
try(BufferedReader reader=new BufferedReader(new InputStreamReader(new URL("http://www.baidu.com").openStream(),"UTF-8"));
){ //網(wǎng)頁的字符集是utf-8
//讀取
String s;
while((s=reader.readLine())!=null)
{
System.out.println(s);
}
}
catch(IOException e)
{
System.out.println("操作異常");
}
}
不使用裝飾器:
try(InputStreamReader is=new InputStreamReader(new URL("http://www.baidu.com").openStream());
){
//讀取
int len;
while((len=is.read())!=-1)
{
System.out.print((char)len);
}
}
catch(IOException e)
{
System.out.println("操作異常");
}
創(chuàng)新互聯(lián)www.cdcxhl.cn,專業(yè)提供香港、美國云服務(wù)器,動態(tài)BGP最優(yōu)骨干路由自動選擇,持續(xù)穩(wěn)定高效的網(wǎng)絡(luò)助力業(yè)務(wù)部署。公司持有工信部辦法的idc、isp許可證, 機(jī)房獨(dú)有T級流量清洗系統(tǒng)配攻擊溯源,準(zhǔn)確進(jìn)行流量調(diào)度,確保服務(wù)器高可用性。佳節(jié)活動現(xiàn)已開啟,新人活動云服務(wù)器買多久送多久。