<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    本站不再更新,歡迎光臨 java開發(fā)技術(shù)網(wǎng)
    隨筆-230  評論-230  文章-8  trackbacks-0

    JAVA 中定義了兩種輸入輸出流:字符流、字節(jié)流。字節(jié)流由兩個頂層的操象類, InputStream OutputStream 類構(gòu)成,每個操象類,都有其具體子類。下表是一些常用的字節(jié)流類。

    ?

    BufferedInputStream

    緩沖輸入流

    BufferedOutputStream

    緩沖輸出流

    ByteArrayInputStream

    從字節(jié)數(shù)組讀取的輸入流

    ByteArrayOutputStream

    從字節(jié)數(shù)組寫入的輸出流

    DataInputStream

    包含讀取 JAVA 標(biāo)準(zhǔn)數(shù)據(jù)類型方法的輸入流

    DataOutputStream

    包含輸入 JAVA 標(biāo)準(zhǔn)數(shù)據(jù)類型方法的輸出流

    FileInputStream

    讀取文件的輸入流

    FileOutputStream

    寫文件的輸出流

    FilterInputStream

    實現(xiàn) InputStream

    FilterOutputStream

    實現(xiàn) OutputStream

    InputStream

    描述輸入流的操象類

    OutputStream

    描述輸出流的操象類

    PipedInputStream

    輸入管道

    PipedOutputStream

    輸出管道

    PrintStream

    包含 print() println() 的輸出流

    PushbackInputStream

    支持向輸入流返回一個字節(jié)的單字節(jié)的 ”unget” 的輸入流

    RandomAccessFile

    支持隨機文件的輸入輸出

    SequenceInputStream

    兩上或兩個以上順序讀取的輸入流

    ?

    ?

    ?

    字符類由兩個類層次結(jié)構(gòu)定義,頂層有兩個操象類, Reader Writer 。這些類處理統(tǒng)一編碼的字符流,包含如下具體子類

    ?

    BufferedReader

    緩沖輸入字符流

    BufferedWriter

    緩沖輸出字符流

    CharArrayReader

    從字符數(shù)組中讀取數(shù)據(jù)的輸入流

    CharArrayWriter

    向字符數(shù)組寫數(shù)據(jù)的輸出流

    FileReader

    讀取文件的輸入流

    FileWriter

    寫文件的輸出流

    FilterReader

    過慮讀

    FilterWriter

    過慮寫

    InputStreamReader

    把字節(jié)轉(zhuǎn)換成字符的輸入流

    OutputStreamWriter

    把字符轉(zhuǎn)換成字節(jié)的輸出流

    LineNumberReader

    計數(shù)行數(shù)的輸入流

    PipedReader

    輸入管道

    PipedWriter

    輸出管道

    PushbackReader

    允許字符返回到輸入流的輸入類

    Reader

    描述字符輸入流的操象類

    StringReader

    讀取字符串的輸入流

    StringWriter

    寫字符串的輸出流

    Writer

    描述字符流輸出的操象類

    ?

    預(yù)定義流

    所有的 JAVA 程序會自動導(dǎo)入 java.lang.* 包。該包定義了一個 System 的類,該類封裝了運行時環(huán)境的多方面,能獲得與當(dāng)前系統(tǒng)有關(guān)的不同屬性。其中包括三個自定義的流變量 ,in,out err System.out 是標(biāo)準(zhǔn)的輸出流, System.in 是標(biāo)準(zhǔn)的輸入流。 System.err 是標(biāo)準(zhǔn)的錯誤流,默認(rèn)是控制臺。顯然這些流可以重定向任何兼容的輸入、輸出設(shè)備。

    ?

    讀取控制臺的輸入

    BufferedReader br=new BufferedReader(new InputStreamReader(System.in));

    ?

    package com.jdk.io;

    ?

    import java.io.*;

    ?

    public class Demo1 {

    ?

    ?????? public static void main(String[] args) throws Exception{

    ????????????? char c;

    ????????????? BufferedReader br=new BufferedReader(new InputStreamReader(System.in));

    ????????????? System.out.println(" 輸入 Q q 退出 ");

    ????????????? do{

    ???????????????????? c=(char)br.read();

    ???????????????????? System.out.println(c);

    ????????????? }while(c!='q');

    ?????? }

    ?

    }

    ?

    這是一個簡單的例子,演示了從控制中輸入字符的例子,還有 read() 方法的使用。 下面的例子演示了 BufferedReader 類的 readline() 方法使用

    package com.jdk.io;

    ?

    import java.io.*;

    ?

    public class Demo1 {

    ?

    ?????? public static void main(String[] args) throws Exception{

    ????????????? String c;

    ????????????? BufferedReader br=new BufferedReader(new InputStreamReader(System.in));

    ????????????? System.out.println(" 輸入 Q q 退出 ");

    ????????????? do{

    ???????????????????? c=br.readLine();

    ???????????????????? System.out.println(c);

    ????????????? }while(!"stop".equals(c));

    ?????? }

    ?

    }

    ?

    向控制臺輸出

    向控制臺輸出通常由 system.out.println() 來完成,它是由 printStream System.out 引用的對象類型)來定義的。心管 System.out 是一個字節(jié)流的輸出,用它來作簡單程序的輸出是可行的, PrintStream 是從 OutputStream 派生出來的,它實了 writer 方法,用來向控制臺輸出一個字符 (char) 。一般不常用 writer ()向控制臺輸出,而用 print() println()

    ?

    ?

    PrintWriter

    Printwriter 流是基于字符串的,它支持 Object print println ,對于不同的類型,它會自動調(diào)用 toString() 轉(zhuǎn)換成字符串來輸出。如:

    ?

    package com.jdk.io;

    ?

    import java.io.*;

    ?

    public class Demo2 {

    ?

    ?????? /**

    ?????? ?* @param args

    ?????? ?*/

    ?????? public static void main(String[] args) {

    ????????????? PrintWriter pw=new PrintWriter(System.out,true);

    ????????????? pw.println("this a String");

    ????????????? pw.println(new Integer("333"));

    ?????? }

    ?

    }

    ?

    ?

    文件的讀寫

    java 允許字符形式的使用字節(jié)文件流。兩個最常用的類就是 FileInputSteam FileOutputStream 這兩個類,為打開文件,你只需要創(chuàng)建兩個類中其中一個的對象即可。下面是一個例子:

    package com.jdk.io;

    ?

    import java.io.*;

    ?

    public class ShowFile {

    ?

    ?

    ?????? public static void main(String[] args) throws Exception{

    ????????????? int i;

    ????????????? FileInputStream fis=null;

    ????????????? try{

    ???????????????????? fis=new FileInputStream(args[0]);

    ????????????? }catch(Exception e){

    ???????????????????? e.printStackTrace();

    ????????????? }

    ????????????? do{

    ???????????????????? i=fis.read();

    ???????????????????? if(i!=-1){System.out.println((char)i);}

    ????????????? }while(i!=-1);

    ?????? }

    ?

    }

    FileInputStream 實現(xiàn)從文件輸入內(nèi)容。

    ?

    ?

    ?

    posted on 2006-10-07 20:52 有貓相伴的日子 閱讀(4424) 評論(1)  編輯  收藏 所屬分類: jdk

    評論:
    # re: java輸入與輸出 2012-02-13 14:24 | 問問
    鵝鵝鵝  回復(fù)  更多評論
      
    本站不再更新,歡迎光臨 java開發(fā)技術(shù)網(wǎng)
    主站蜘蛛池模板: 国产免费观看a大片的网站| a级日本高清免费看| 青草草色A免费观看在线| 亚洲国模精品一区| 暖暖免费中文在线日本| 全黄性性激高免费视频| 污污的视频在线免费观看| 免费国产不卡午夜福在线| 色哟哟国产精品免费观看| 亚洲精品亚洲人成在线观看下载| 边摸边吃奶边做爽免费视频99| 免费欧洲毛片A级视频无风险| 亚洲精华液一二三产区| 国产成人免费a在线视频app| www在线观看免费视频| 啊v在线免费观看| 污视频网站免费在线观看| 亚洲色偷偷综合亚洲AV伊人| 成在线人免费无码高潮喷水| 亚洲AV无码一区东京热| 黄在线观看www免费看| 亚洲av无码专区在线电影天堂 | 18禁超污无遮挡无码免费网站| 亚洲国产精品无码AAA片| 日韩精品久久久久久免费| 亚洲a级在线观看| 四虎永久精品免费观看| 国产一级婬片A视频免费观看| 亚洲av永久无码精品网站 | 亚洲特级aaaaaa毛片| 韩国免费三片在线视频| 久久一区二区免费播放| 久久亚洲AV无码精品色午夜麻豆 | 亚洲AV日韩AV永久无码下载| 精品久久久久久久久免费影院| 亚洲乱理伦片在线观看中字| 337p日本欧洲亚洲大胆裸体艺术| 9420免费高清在线视频| 国产青草亚洲香蕉精品久久| 久久香蕉国产线看观看亚洲片| 成年人免费网站在线观看|