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

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

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

    java文件讀取。(單字節讀取和按行讀取讀取)

    java中很多關于文件讀取的工作。
    操作也很平凡。
    所以java的文件讀取是很重要的一部分。
    首先是單字節的讀取工作。
    見源代碼:

     1package ReadFile;
     2
     3import java.io.FileReader;
     4import java.io.IOException;
     5
     6public class readFile {
     7    public static void readfile(String file){
     8        try{
     9            FileReader fr = new FileReader(file);
    10            int ch = 0;
    11            while((ch=fr.read())!=-1){
    12                System.out.println((char)ch);
    13            }

    14        }
    catch(IOException e){
    15            e.printStackTrace();
    16        }

    17    }

    18    public static void main(String[] args) {
    19        readfile("e:\\dd.txt");
    20    }

    21}

    這里是但讀取每個自己或字符。
    如果要進行按行讀取的話,必須采用BufferedReader  BufferedReader中的readline();
     1package ReadLime;
     2
     3import java.io.BufferedReader;
     4import java.io.BufferedWriter;
     5import java.io.FileReader;
     6import java.io.FileWriter;
     7import java.io.IOException;
     8
     9public class readLine {
    10    public static void readline(String file,String writerfile){
    11        try{
    12        FileReader fr = new FileReader(file);
    13        BufferedReader br = new BufferedReader(fr);
    14        
    15        FileWriter fw = new FileWriter(writerfile); //寫文件操作,把得到的file對應的文件中內容寫入,writerfile中去。
    16        BufferedWriter bw = new BufferedWriter(fw);
    17        String readoneline;
    18        int l;
    19        while((l = br.read()) != -1){
    20            readoneline = br.readLine();
    21            bw.write(readoneline);
    22            bw.newLine();
    23            System.out.println(readoneline);
    24        }

    25        bw.flush();
    26        br.close();
    27        bw.close();
    28        br.close();
    29        fw.close();
    30        fr.close();
    31        }
    catch(IOException e){
    32            e.printStackTrace();
    33        }

    34    }

    35    public static void main(String [] args){
    36        readline("e:\\dd.txt","e:\\aa.txt");
    37    }

    38}

    posted on 2008-10-06 14:50 duduli 閱讀(32474) 評論(12)  編輯  收藏 所屬分類: java

    評論

    # re: java文件讀取。(單字節讀取和按行讀取讀取) 2008-10-06 15:16 隔葉黃鶯

    再簡單也比不過 groovy 的這一行代碼

    text = new File("foo.txt").getText();   回復  更多評論   

    # re: java文件讀取。(單字節讀取和按行讀取讀取) 2008-10-06 16:23 van

    @隔葉黃鶯

    PHP,Python,Rudy都可以這么簡單..

    這樣沒啥可比性..

    學Java的新手依然比學其他語言的新手多.

    So從這個角度來講,博主的文章還是更具價值的.:-)  回復  更多評論   

    # re: java文件讀取。(單字節讀取和按行讀取讀取) 2008-10-06 19:00 隔葉黃鶯

    第一段代碼應使用字節緩沖,不然效率會低很多,緩沖的大小可適應實際來調整

    第二段代碼,不需要逐層 close(),這里的實現都是裝飾模式,外層 close() 時會調用內層對象的 close() 方法。  回復  更多評論   

    # re: java文件讀取。(單字節讀取和按行讀取讀取) 2008-10-06 19:37 duduli

    想從基礎學起,呵呵 @隔葉黃鶯
      回復  更多評論   

    # re: java文件讀取。(單字節讀取和按行讀取讀取) 2008-10-06 19:37 duduli

    這個我也知道,但是并沒過多的考慮。@隔葉黃鶯
      回復  更多評論   

    # re: java文件讀取。(單字節讀取和按行讀取讀取) 2008-10-06 19:56 隔葉黃鶯

    你都知道呀,就當我什么也沒說。  回復  更多評論   

    # re: java文件讀取。(單字節讀取和按行讀取讀取) 2008-10-06 20:22 duduli

    也不能那樣說啦,至少還是有缺陷的。謝了@隔葉黃鶯
      回復  更多評論   

    # re: java文件讀取。(單字節讀取和按行讀取讀取) 2008-12-09 16:37 fofo

    行讀取時貌似代碼有問題
    while((l = br.read()) != -1){
    readoneline = br.readLine();
    System.out.println(readoneline);
    }


    改為:
    String readoneline;
    while ((readoneline = br.readLine()) != null) {
    System.out.println(readoneline);
    }
    可以正確讀出  回復  更多評論   

    # re: java文件讀取。(單字節讀取和按行讀取讀取) 2010-08-06 16:15 董澤榛

    同意你的看法@fofo
      回復  更多評論   

    # re: java文件讀取。(單字節讀取和按行讀取讀取) 2011-11-30 11:58 alexyang

    行讀取時貌似代碼有問題
    while((l = br.read()) != -1){
    readoneline = br.readLine();
    System.out.println(readoneline);
    }


    改為:
    String readoneline;
    while ((readoneline = br.readLine()) != null) {
    System.out.println(readoneline);
    }
    可以正確讀出
    -------------------------------------
    以上兩種寫法都有問題。
    第一種會丟失每行第一個字符,
    第二種會丟失第一行。  回復  更多評論   

    # re: java文件讀取。(單字節讀取和按行讀取讀取) 2011-11-30 12:12 alexyang

    抱歉,上面弄錯了,
    while ((readoneline = br.readLine()) != null) {
    readoneline = new String(readoneline.getBytes(), "UTF8");

    之前寫成了

    while ((readoneline = br.readLine()) != null) {
    readoneline = new String(br.readLine().getBytes(), "UTF8");

    br.readLine()又讀了一行。
      回復  更多評論   

    # re: java文件讀取。(單字節讀取和按行讀取讀取)[未登錄] 2012-05-14 16:01 Erica

    就是啊,原本的錯誤會把每行第一個字符給去掉了@fofo
      回復  更多評論   

    <2008年10月>
    2829301234
    567891011
    12131415161718
    19202122232425
    2627282930311
    2345678

    導航

    統計

    公告

    welcome to my place.

    常用鏈接

    留言簿(5)

    我參與的團隊

    隨筆分類

    隨筆檔案

    新聞分類

    石頭JAVA擺地攤兒

    搜索

    積分與排名

    最新評論

    閱讀排行榜

    評論排行榜

    @duduli
    主站蜘蛛池模板: 日本久久久免费高清| 精品久久久久久久久免费影院| 午夜色a大片在线观看免费| 亚洲图片激情小说| 69国产精品视频免费| 337p日本欧洲亚洲大胆精品555588| 免费无码黄网站在线看| 亚洲免费视频网址| 最好看最新的中文字幕免费| 亚洲av女电影网| 精品福利一区二区三区免费视频| 亚洲综合激情另类小说区| 国产精品亚洲片在线花蝴蝶| 午夜视频免费成人| 色屁屁www影院免费观看视频 | 免费中文字幕视频| 亚洲免费二区三区| 亚洲13又紧又嫩又水多| 四虎成人精品一区二区免费网站| 亚洲精品综合在线影院| 特级毛片aaaa免费观看| 中文字幕不卡亚洲| 日韩午夜理论免费TV影院| 亚洲一区二区三区国产精品无码 | 最近中文字幕大全免费视频| 亚洲国产综合91精品麻豆| 亚洲美女免费视频| 校园亚洲春色另类小说合集| 青青草原亚洲视频| 久久免费看黄a级毛片| 国产精品亚洲专区一区| 国产亚洲婷婷香蕉久久精品 | 国产传媒在线观看视频免费观看| 草久免费在线观看网站| 91亚洲精品视频| 又粗又硬又黄又爽的免费视频| 怡红院免费的全部视频| 亚洲乱人伦精品图片| 亚洲一区日韩高清中文字幕亚洲| 99蜜桃在线观看免费视频网站| 亚洲av综合av一区二区三区 |