看板 java 關於我們 聯絡資訊
※ 引述《ntb (錩哥超口愛)》之銘言: : 我的程式目的是想將文字檔變成一行字串 (StringBuffer的物件) : 每個檔案的大小約40 mb, : 因為第一行的標題不想串入StringBuffer的物件內, : 所以想跳掉第一行, : 但不知道為什麼少串這行,在執行時反而會發生錯誤。 預設的 heap size 是 64 mb, 你的一個檔案就 40 mb,加上一些其他的資源,像是 buffer,還會再多些。 當迴圈多做幾次後,如果 gc 來不及回收就炸掉,應該也是蠻有可能的。 : (若拿掉String str = input.readLine()就可以) 這個我看不出原因,能否多試幾次看看。 : while ((str = input.readLine()) != null){ : sb = sb.append(str); 這行寫成 sb.append(str) 就可以了, 因為 sb.append(...) 回傳的仍然是 sb 的 refrence。 這是為了方便你連接多個 append 用的, ex: sb.append("Hello ").append("world!"); -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.114.78.231