我需要讀取巨大的Unicode文件到我的程序中,並轉換爲ANSI進行解析,並對於某些文件,將它們再次存儲爲Univode,而其他文件應放在ANSI代碼頁中。如何讀取或寫入巨大的Unicode文件?
正如我所瞭解的那樣,簡單的讀寫不支持Unicode文本,對於使用twidestring.loadfromfile
的最大文件(有些可能大至300 Mb甚至更大)是無可厚非的,因爲內存使用率和時間加載。
我一直在想,如果加載塊可能是一個解決方案的路徑,但據我所知,它不支持Unicode BOM?
任何暗示?
嘗試創建一個程序,將該文件轉換爲較小的部分,並且在索引這些部分之後,您可以讀取每個部分。最終這些塊試圖將它們寫入內存中。 – user1929959 2013-03-16 14:03:47
只需一次讀取文件。處理每個部分並轉到下一部分。 – 2013-03-16 16:02:26
爲什麼使用非Unicode的Delphi版本2006?如果您關心unicode,請轉至unicode delphi版本。下載後,你打算做什麼?僅在TNT組件中顯示?浪費時間和精力。 – 2013-03-16 21:43:17