所以,我正在处理集成遗留系统的问题。它生成一个大文本文件,用一个大字符串打印指令。真的很大的字符串。我们说的是450,000个字符或更多。
我需要将其分解为一行,每条指令一行。每条指令由五位数代码分隔,其中代码包含下一条指令中的字符数。
我的解决方案是编写一个小型java程序,该程序使用缓冲读取器将文件读入字符串,然后将其拆分为行,并保存到新文件中。
有关处理此事的任何建议吗?缓冲读者是否能够将其读入常规字符串?我做错了吗?
答案 0 :(得分:3)
是。使用缓冲读卡器。
计算出指令的最大大小并创建该大小的char []。然后做一些事情:
reader.read(charArray, 0, 5);
// parse the header
reader.read(charArray, 0, lengthOfInstruction);
String instruction = new String(charArray, 0, lengthOfInstruction);
// do stuff with the instruction
你把它放在一个while循环中,当文件结束时终止。
这可能不是最有效的运行时间,但它可能足够好并且足够简单以便工作。