我试图使用Buffered Reader读取大约160 MB的文件,然后将每一行读入字符串并进行验证(检查每行中的第一个字符)。如果文件经过验证,则我将重新读取文件并根据该行中的地址拆分文件,并将其保存在地图中,因为多行可以转到同一地址。一旦读取了完整的文件,我就通过FTPS.String将它们写入。
文件格式
AJZ / AJJZ / AJJJZ的块
从A行中,我们必须提取地址,然后发送该块(AJZ),可以将一个块发送到多个地址,如果一个以上的块属于同一地址(例如,Address2),我们将合并这些块
AAddress1,Address2
J7777
Z02
A00Address2,Address3
JH77
Z00 ...
答案 0 :(得分:1)
您可以使用Flyweight design pattern来压缩字符串。
例如,您只能将每个单词存储一次,并为原始文本中的每个单词使用唯一的占位符(一些整数)。这样,您最终会得到一系列占位符。