web-dev-qa-db-ja.com

レコードエディタのCOBOLからCsvへ

Record Editorで直面していて、COBOLデータとCopybookファイルをCSVに変換しようとしているという問題があります。 「CobolCopybookのコードを生成すると正確なプレビューが作成されますが、正確に取得する唯一の方法は「不明なファイル形式」、「修正済み」を使用することであるため、エクスポートできません。レコード長が「XXX」または「422」の「長さバイナリ」ファイル構造。これを修正する方法、またはこの状況に対処する方法を誰かが知っているかもしれません。

初期不明なファイル形式最終

2
primesc

いくつかの可能な解決策があります

  • 生成された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の長さに増やすことができます。

1
Bruce Martin

何が問題なのかを理解したようです。コピーブックは、422レコード長を作成するのに十分な終了フィラーフィールドで定義されていませんでした。

2
primesc