Re: [問題] 讀txt文字檔

看板java作者 (Desperado)時間17年前 (2008/05/29 09:38), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串3/3 (看更多)
※ 引述《TonyQ (骨頭)》之銘言: : ※ 引述《sioo (Desperado)》之銘言: : : 想請問一下,如果我要讀一個內容大概有10mb的文字檔, : : 有什麼比較快的方法嗎? : : 因為我用 : : newContent=BufferedReader.readline() : : oldContent+=newContent : : 這種方式一行一行讀,感覺非常的慢,已經等半小時了還沒跑完 : : 請問有什麼比較聰明且快的方法嗎?謝謝了... : StringBuffer , StringBuffer ,and StringBuffer. : 特別在累加的次數越大的時候,感覺會越明顯。 : StringBuffer sb=new StringBuffer(); : sb.append("1"); : sb.append("2"); : sb.append("3"); : System.out.println(sb.toString()); 果然使用StringBuffer以後,非常快的時間內,不到一分鐘, 就把讀txt、split和寫入excel這三件事都作完了... 謝謝各位.....又學到一課了 有找到java中String,StringBuffer和StringBuilder的差別,分享給各位 String is immutable whereas StringBuffer and StringBuilder can change their values. The only difference between StringBuffer and StringBuilder is that StringBuilder is unsynchronized whereas StringBuffer is synchronized. So when the application needs to be run only in a single thread then it is better to use StringBuilder. StringBuilder is more efficient than StringBuffer. Criteria to choose among String, StringBuffer and StringBuilder 1.If your text is not going to change use a string Class because a String object is immutable. 2.If your text can change and will only be accessed from a single thread, use a StringBuilder because StringBuilder is unsynchronized. 3.If your text can changes, and will be accessed from multiple threads, use a StringBuffer because StringBuffer is synchronous. 所以看來在我這個程式中,其實用StringBuilder應該是最快的.... -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 219.87.151.2 ※ 編輯: sioo 來自: 219.87.151.2 (05/29 09:50)
文章代碼(AID): #18FWa5O3 (java)
討論串 (同標題文章)
文章代碼(AID): #18FWa5O3 (java)