我有一个Java批处理作业,我正在写入作者的文件。
我写入MVS数据集并使用ZFile的write(byte [] buf)写入文件。
然而,不是在新行中写入每个记录,而是在同一行中写入(即使末尾的Java字符串中有“\ n”)。是否需要为此传递任何参数?
recfm是fb,类型是记录。记录长度为80,但所有记录的长度可能不是80
String pdsName = ZFile.getSlashSlashQuotedDSN("A.B.C.D");
try {
// dsnFile = new ZFile(pdsName ,"wb,type=record,recfm=fb,lrecl=80,noseek");
} catch (ZFileException e) {
e.printStackTrace();
}
for(Object o: listOfStrings){
String s = (String)o;
try {
dsnFile.write(s.getBytes());
} catch (ZFileException e) {
e.printStackTrace();
}
}
答案 0 :(得分:0)
您正试图以“写二进制”格式打开输出文件。您可以尝试使用“写文本”代替
dsnFile = new ZFile(pdsName ,"wt,recfm=fb,lrecl=80,blksize=0");