EDI-x12ヘッダーパーサーを実装しています(「ISA」セグメントを解析するためのみ)。使用できる文字セットがいくつかあることに気付きました。
私の質問は、メッセージの解釈方法を知るために、着信edi-x12メッセージのどちらが使用されているかをどのように知ることができるかということです。
実際、x12には文字セットのようなものはありません。これは、パートナー/交換契約次第です。しかし、X12は主に米国で使用されているため、(ほとんどの場合)us-asciiです。(しかし.....一部の企業はx12をEBCEDICとして送信します;-)))
ANSI X12のみを実行している場合、ISAセグメントは固定長であるため、解析しやすいはずです。
位置4は、要素区切り文字(フィールド区切り文字)を提供します。
ポジション106は、レコードターミネータを提供します。
位置105は、サブ要素の区切り文字を示します
ドキュメントの種類によっては、サブ要素の区切り文字をあまり使用しない可能性があります。フィールド区切り文字が何であるか、次にレコード区切り文字が何であるかを理解したら、それは簡単なはずです。
(標準の免責事項:データトランスレーターの形で、プログラマーに車輪の再発明をさせるよりもはるかに簡単なツールがたくさんあります。これらのツールの中には、オープンソースで無料のものもあります。ただ言ってください...)
お役に立てれば。