![Редактор записей Cobol в CSV](https://rvso.com/image/1605186/%D0%A0%D0%B5%D0%B4%D0%B0%D0%BA%D1%82%D0%BE%D1%80%20%D0%B7%D0%B0%D0%BF%D0%B8%D1%81%D0%B5%D0%B9%20Cobol%20%D0%B2%20CSV.png)
У меня возникла проблема с Record Editor и я пытаюсь преобразовать данные COBOL и файлы Copybook в CSV. Я застрял на этапе, когда «Generate Code for Cobol Copybook создает предварительный просмотр, который является точным, но я не могу его экспортировать, потому что единственный способ сделать его точным — использовать структуру файла «Unknown File Format», «Fixed Length Binary» с длиной записи «XXX» или «422». Может быть, кто-то знает, как это исправить? Или как подойти к этой ситуации?
решение1
Есть несколько возможных решений
- Обновите сгенерированный код Java и задайте recordLength
- Добавьте в тетрадь наполнитель, чтобы увеличить ее длину до 422.
Используйте опцию setRecordLength
В сгенерированном коде вы можете добавитьsetRecordLengthвызов, чтобы заставить JRecord использовать длину большую, чем в прописи
т.е. будет код типа
ICobolIOBuilder ioBldr = JRecordInterface1.COBOL
.newIOBuilder(new ByteArrayInputStream(cobolCopybook.getBytes()), "COMPANY-RECORD")
Вы можете добавитьsetRecordLengthметод вызова
ICobolIOBuilder ioBldr = JRecordInterface1.COBOL
.newIOBuilder(new ByteArrayInputStream(cobolCopybook.getBytes()), "COMPANY-RECORD")
.setRecordLength(422)
Обновление тетради
Вы можете добавить в тетрадь заполнитель, чтобы увеличить длину записи до 422
решение2
Кажется, я понял, в чем проблема: в тетради не было определено поле-заполнитель окончания, которого было бы достаточно для создания записи длиной 422.