我正在尝试使用 IBM 的 JSR352 实现开发 Java 批处理程序。由于批处理作业涉及迭代处理大量记录,因此我选择将其实现为块处理作业。
这项工作涉及 3 个步骤,这些步骤对文件 1 中的每个记录保持重复
- Reader 类:从文件 1 中读取内容以形成关键文本
- 处理器类:查找文件 2 中的关键文本
- Writer Class:使用自定义文本更新文件 2 中找到关键文本的文本
从处理器到编写器,我可以返回找到关键文本匹配的所有行号。但是,如果没有对文件的 RandomAccess,我如何从我的 Writer 更新文件 2 中的那些特定行号?
由于我仅限于使用这些输入/输出流进行文件处理,因此我无法在处理器和编写器类之间拆分查找和更新逻辑。我怎样才能做到这一点?
这是因为代码将在 Windows 机器中开发,但最终在大型机 (z/os) 服务器中执行。