點擊查看:2015計算機等級考試二級Java入門教程章節匯總
點擊查看:2015計算機等級考試二級Java入門教程第九章匯總
9.4 格式化的流輸入
如我們前面提到的,你可以通過來自java.io.包中的StreamTokenizer類的格式化輸入得到許多幫助。標記(token )是指一個數據項,例如一個數字或一個字符串,它通常包含來自流中的若干個連續的字符。由于它可以從流中讀取字符,并且使數據成為符合要求的一連串標記或數據項,所以這個類的名字叫做StreamTokenizer.在默認情況下,一個標記或者是一個數字,它可以包括一個減號、阿拉伯數字或一個小數點:或者是兩個單引號或雙引號括起來的一個字符串。以字母開頭,并且以空格作為定界,由字母、阿拉伯數字、小數點和減號按任意順序組成一系列字符也作為一個字符串標記處理,并稱為一個字。任何非空格的,設有用單引號或雙括號括起來而且不是注釋的一部分的其他字符則被讀做null.StrearnTokenizer類忽略了Java風格的注釋,注釋從//開始,或括在/*和*/之間,忽略空格及newline。
你可以從一個字符輸入流對象構造一個StreamTokenizer對象,例如,你可以使用下面的語句構造一個對應標準輸入流的StreamTakenizer對象。
StreamTokenizer mystream=new streamTokenizer(
new FileReader(FileDescr(ptor.out));
你能夠使一個標記--換句話說是一個數據項--從使用的流中被讀取,并通過調用StreamTokenizer對象的nextToken()方法來構造 StreamTokenizer對象:
int dataType=mystream.nextToken();
通過該方法返回的整數表示所讀標記的種類。從流中所讀的該標記本身存儲在StreamTokenizer對象的兩個實例之一中。如果數據項是一個數字,它存放在一個public數據成員nval中,類型為double.如果數據項是一個括起來的字符串或一個字,一個對String對象的引用存放在public數據成員sval中,類型當然是String.有關把流分解成為token的分解方法是相當簡單的。下面的圖解說明了把任意一個流分解成為標記的方法。
我們來看一下這個類如何從鍵盤讀數據項。
相關推薦:
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內蒙古 |