標籤:檔案io java scanner printwriter 異常
Java中的檔案輸入輸出格式和C++中不太一樣,這篇我們整理一下Java中是如何?檔案I/O的。
首先,確定檔案對象。
java.io.File file = new java.io.File("score.txt");
這裡最好判斷檔案是否存在,防止後面讀取檔案內容的時候出錯。
輸入:
1)使用java.io.PrintWriter類型,即java.io.PrintWriter inputFile = new java.io.PrintWriter(file);
2)往檔案中寫入String類型,可以使用inputFile.println(str). 一行行的寫入。
3)全部寫完之後,需要關閉檔案才能夠生效,即inputFile.close();
4)PrintWriter方法,如果檔案不存在會建立一個新檔案;如果檔案已經存在,會捨棄之前的內容,重新讀寫。
5)出現檔案操作的方法,在聲明的時候需要加入throws Exception。
輸出:
1)使用Scanner類型,Scanner outputFile= new Scanner(file); 注意,Scanner需要添加import java.util.Scanner;
2)讀取檔案內容的時候,需要迴圈判斷outputFile.hasNext(),一直到檔案尾端;
3)真正讀取檔案,我們還需要方法next(),它會讀取用分隔字元隔開的令牌,預設的分隔字元是空格,我們還可以使用useDelimiter(String regex)方法來設定新的分隔字元;
4)全部讀取完之後,需要關閉檔案, outputFile.close()。
5)出現檔案操作的方法,在聲明的時候需要加入throws Exception。
package testing;/*** * * @author Hadoop * */import java.util.Scanner; // 為了後面的Scannerpublic class TestingFile {/** * MAIN CLASS * @param args */public static void main(String[] args) throws Exception{// TODO Auto-generated method stubjava.io.File file = new java.io.File("score.txt"); if(!file.exists()) {System.out.println("File not found"); //System.exit(0);}java.io.PrintWriter output = new java.io.PrintWriter(file); // need to throws ExceptionString str = "LiLei 90"; output.println(str); str = "HanMei 100"; output.println(str); output.close();Scanner input = new Scanner(file); while(input.hasNext()) {String name = input.next(); // 以空格為分隔字元String score = input.next(); System.out.println("The score of " + name + " is " + score); }input.close();}}
Java中的檔案I/O