[問題] 該怎麼處理一些輸入字串?

看板java作者 ( Full HD)時間15年前 (2010/09/13 15:17), 編輯推噓1(101)
留言2則, 2人參與, 最新討論串1/1
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

09/13 15:54, , 1F
如果不能窮舉規則,是不可能有這種 library 的
09/13 15:54, 1F

09/13 16:04, , 2F
String.split(), Scanner 這兩個先看完
09/13 16:04, 2F
文章代碼(AID): #1CZT01Ni (java)