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

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

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

    隨筆-26  評論-13  文章-46  trackbacks-0
    Java 中對文件的讀寫操作之比較
    一.在 JDK 1.0 中,通常是用 InputStream & OutputStream 這兩個基類來進行讀寫操作的。
    InputStream 中的 FileInputStream 類似一個文件句柄,通過它來對文件進行操作,類似的,在
    OutputStream 中我們有 FileOutputStream 這個對象。

    用FileInputStream 來讀取數據的常用方法是:
    FileInputStream fstream = new FileInputStream(args[0]);
    DataInputStream in = new DataInputStream(fstream);
    用 in.readLine() 來得到數據,然后用 in.close() 關閉輸入流。
    完整代碼見 Example 1。

    用FileOutputStream 來寫入數據的常用方法是:
    FileOutputStream out out = new FileOutputStream("myfile.txt");    
    PrintStream p = new PrintStream( out );
    用 p.println() 來寫入數據,然后用 p.close() 關閉輸入。
    完整代碼見 Example 2。


    二.在 JDK 1.1中,支持兩個新的對象 Reader & Writer, 它們只能用來對文本文件進行操作,而
    JDK1.1中的 InputStream & OutputStream 可以對文本文件或二進制文件進行操作。

    用FileReader 來讀取文件的常用方法是:
    FileReader fr = new FileReader("mydata.txt");
    BufferedReader br = new BufferedReader(fr);
    用 br.readLing() 來讀出數據,然后用br.close() 關閉緩存,用fr.close() 關閉文件。
    完整代碼見 Example 3。

    用 FileWriter 來寫入文件的常用方法是:
    FileWriter fw = new FileWriter("mydata.txt");
    PrintWriter out = new PrintWriter(fw);  
    在用out.print 或 out.println 來往文件中寫入數據,out.print 和 out.println的唯一區別是后者寫
    入數據或會自動開一新行。寫完后要記得 用out.close() 關閉輸出,用fw.close() 關閉文件。   
    完整代碼見 Example 4。

    -------------------------------------------------------------- following is the source code of examples------------------------------------------------------

    Example 1:
    // FileInputDemo
    // Demonstrates FileInputStream and DataInputStream
    import java.io.*;

    class FileInputDemo {
      
    public static void main(String args[]) {
        
    // args.length is equivalent to argc in C
        if (args.length == 1{
          
    try {
            
    // Open the file that is the first command line parameter
            FileInputStream fstream = new FileInputStream(args[0]);
            
    // Convert our input stream to a DataInputStream
            DataInputStream in = new DataInputStream(fstream);
            
    // Continue to read lines while there are still some left to read
            while (in.available() !=0{
              
    // Print file line to screen
              System.out.println (in.readLine());
            }

            
    in.close();
          }
     catch (Exception e) {
            System.err.println(
    "File input error");
          }

        }

        
    else
          System.
    out.println("Invalid parameters");
      }

    }


    Example 2:
    // FileOutputDemo
    // Demonstration of FileOutputStream and PrintStream classes
    import java.io.*;

    class FileOutputDemo 
    {    
      
    public static void main(String args[])  {              
      FileOutputStream 
    out// declare a file output object
        PrintStream p; // declare a print stream object

    try {
      
    // connected to "myfile.txt"
          out = new FileOutputStream("myfile.txt");
          
    // Connect print stream to the output stream
          p = new PrintStream( out );
          p.println (
    "This is written to a file");
          p.close();
        }
     catch (Exception e) {
          System.err.println (
    "Error writing to file");
        }

      }

    }


    Example 3:
    // FileReadTest.java
    // User FileReader in JDK1.1 to read a file 
    import java.io.*;

    class FileReadTest {      
      
    public static void main (String[] args) {
        FileReadTest t 
    = new FileReadTest();
        t.readMyFile();
    }
     
        
      
    void readMyFile() 
        String record 
    = null;
        
    int recCount = 0
        
    try 
    FileReader fr 
    = new FileReader("mydata.txt");
           BufferedReader br 
    = new BufferedReader(fr);
           record 
    = new String();
           
    while ((record = br.readLine()) != null{
             recCount
    ++;
             System.
    out.println(recCount + "" + record); 
    }

    br.close();
    fr.close(); 
         }
     catch (IOException e) 
             System.
    out.println("Uh oh, got an IOException error!");
             e.printStackTrace();
         }

    }
     
      
    }
        

    Example 4:
    // FileWriteTest.java
    // User FileWriter in JDK1.1 to writer a file 
    import java.io.*;

    class FileWriteTest {      
      
    public static void main (String[] args) {
        FileWriteTest t 
    = new FileWriteTest();
        t.WriteMyFile();
    }
     
        
      
    void WriteMyFile() 
        
    try 
    FileWriter fw 
    = new FileWriter("mydata.txt");
    PrintWriter 
    out = new PrintWriter(fw);    
    out.print(“hi,this will be wirte into the file!”);   
    out.close();
    fw.close();
         }
     catch (IOException e) 
             System.
    out.println("Uh oh, got an IOException error!");
             e.printStackTrace();
         }

    }
     
      
    }
        
    posted on 2005-06-23 17:46 似水流年 閱讀(902) 評論(2)  編輯  收藏 所屬分類: Java

    評論:
    # re: Java 中對文件的讀寫操作之比較 2007-09-19 17:08 | f
    gffff  回復  更多評論
      
    # re: Java 中對文件的讀寫操作之比較 2007-09-19 17:08 | f
    gfb  回復  更多評論
      

    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 免费在线黄色网址| 亚洲A∨无码无在线观看| www免费黄色网| 亚洲第一极品精品无码久久| 免费H网站在线观看的| 国产亚洲精品AAAA片APP| 国产精品国产亚洲精品看不卡| 日本妇人成熟免费中文字幕| 野花视频在线官网免费1| 亚洲AV无码成人精品区天堂| 日本一区二区三区免费高清| 一个人免费观看日本www视频| 亚洲精品韩国美女在线| 凹凸精品视频分类国产品免费| 99久热只有精品视频免费看| 亚洲AV日韩AV永久无码色欲| 亚洲图片一区二区| 国产免费黄色大片| 84pao国产成视频免费播放| 免费看一级一级人妻片| 亚洲人成激情在线播放| 国产成人精品日本亚洲专区61 | 日韩亚洲不卡在线视频中文字幕在线观看 | www国产亚洲精品久久久| 性无码免费一区二区三区在线| 国产精品亚洲一区二区三区久久| 亚洲一区综合在线播放| 老司机亚洲精品影视www| 手机在线毛片免费播放 | 四虎影视在线永久免费看黄| 9277手机在线视频观看免费| 精品一区二区三区高清免费观看 | 免费播放在线日本感人片| 久久亚洲精品无码网站| 亚洲精品视频免费看| 激情综合色五月丁香六月亚洲| 日韩一区二区免费视频| 亚洲高清中文字幕免费| 最近免费中文字幕大全免费版视频| 国产免费MV大全视频网站| 色九月亚洲综合网|