【问题标题】:How to convert Java object to binary file using copybook如何使用 copybook 将 Java 对象转换为二进制文件
【发布时间】:2017-09-25 09:55:12
【问题描述】:
是否有人知道如何使用 COBOL 抄写本将 Java 对象转换为二进制文件?该文件将被传输到大型机,因此必须具有与字帖的映射。我尝试查看 JRecord,但我只能找到从大型机二进制文件到 java 对象的转换,而不是相反。
有人可以帮忙吗?
【问题讨论】:
标签:
java
mainframe
copybook
jrecord
【解决方案1】:
看看问题How do you generate java~jrecord code fror a Cobol copybook。它演示了如何使用Recordeditor 生成Java/JRecord 代码来读取/写入文件。
但广泛
IIOBuilder ioBldr = JRecordInterface1.SCHEMA_XML .newIOBuilder(copybookName);
try {
AbstractLine saleRecord = ioBldr.newLine();
AbstractLineWriter writer = ioBldr.newWriter(salesFileOut);
saleRecord.getFieldValue("KEYCODE-NO").set(1331);
saleRecord.getFieldValue("STORE-NO").set(1);
saleRecord.getFieldValue("DATE").set(80921);
saleRecord.getFieldValue("DEPT-NO").set(100);
saleRecord.getFieldValue("QTY-SOLD").set(7);
saleRecord.getFieldValue("SALE-PRICE").set(7.00);
writer.write(saleRecord);
saleRecord.getFieldValue("STORE-NO").set(11);
writer.write(saleRecord);
saleRecord.getFieldValue("STORE-NO").set(121);
writer.write(saleRecord);
System.out.println(" " + saleRecord.getFieldValue("SALE-PRICE").asString());
writer.close();
} catch (Exception e) {
虽然这使用了 Xml 架构;原理是一样的。