作者Nurburgring ( Full HD)
看板java
標題[問題] 該怎麼處理一些輸入字串?
時間Mon Sep 13 15:17:18 2010
ex:
輸入檔是個 .txt 檔,內容大致如下
1 xy 2
1 z 4
5 R 1004 I 5678 E 2777 R 8002 E 7002
我現在是用以下方式讀入 input 檔
BufferedReader buf = new BufferedReader(new InputStreamReader(System.in));
File file = new File("檔名");
StringBuilder contents = new StringBuilder();
BufferedReader reader = null;
while ( (text = reader.readLine()) != null )
{
contents.append(text).append(System.getProperty("line.separator"));
}
------------------------------------------------------------------------
這樣讀進來的資料是以一行為一個單位, 但我現在想做的事情
必須要根據輸入檔的每個 token 來判斷接下來的個別動作
而輸入檔又不一定會是很整齊的規格..
我只想到用 text.charAt 可以去分析每個 character
但這樣必須確定 index 才可以去操作,但我無法確定輸入檔的格式
所以,也無法確定 index..
舉個例子, 輸入檔第一行(1 xy 2)的意思是
有 1 組變數叫做 xy, 它的值是 2
但這些東西都是可變的, 例如 (2 z 3 y 4)的意思是
有兩組變數 z 跟 y, 其值分別是 3 跟 4
這就是我說的 輸入檔又不一定會是很整齊的規格 的意思
不知道這樣表達的清不清楚?
想知道 java 有沒有適合的 library 可以去處理這些問題?
還是我不應該用這種讀檔方式? 有其他推薦的方式嗎?
我沒什麼頭緒,也不知道從何查起
希望各位提點一下. 感謝.
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 24.193.69.31
推 PsMonkey:如果不能窮舉規則,是不可能有這種 library 的 09/13 15:54
→ tkcn:String.split(), Scanner 這兩個先看完 09/13 16:04