<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  回復  更多評論
      

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


    網站導航:
     
    主站蜘蛛池模板: 亚洲高清不卡视频| 久久噜噜噜久久亚洲va久| 一级毛片aaaaaa免费看| 亚洲片一区二区三区| 韩国亚洲伊人久久综合影院| 免费看大黄高清网站视频在线| 亚洲一区二区三区精品视频| 亚洲欧洲免费无码| 亚洲日本乱码在线观看| WWW免费视频在线观看播放| 亚洲日韩在线观看免费视频| 国产成人高清精品免费观看| 国产亚洲日韩在线三区| 日本高清不卡aⅴ免费网站| 亚洲国产人成网站在线电影动漫 | 韩日电影在线播放免费版| 中文字幕亚洲综合久久菠萝蜜| 中文字幕无线码中文字幕免费| 久久综合日韩亚洲精品色| 久久久久久精品免费看SSS| 亚洲熟妇丰满xxxxx| 免费乱码中文字幕网站| 97在线免费视频| 亚洲性无码av在线| 国产一区二区三区免费视频| 香蕉免费在线视频| 亚洲欧洲日本天天堂在线观看| 日韩高清免费在线观看| 精品久久久久久无码免费| 中文字幕在线观看亚洲| 国产国产人免费人成免费视频| 一级做a爰性色毛片免费| 亚洲最大黄色网站| 国产一级特黄高清免费大片| 中文无码成人免费视频在线观看| 亚洲精品成人久久| 亚洲国产成人爱av在线播放| 最近2019中文字幕免费大全5| 亚洲第一成年免费网站| 免费特级黄毛片在线成人观看| 一级毛片高清免费播放|