1

EDI で送信された .txt ファイルから配達日を取得できません。

私の顧客は、.txt ファイルに次の行を設定する機会が必要です。

'DTM+76: 20160702 :102

将来の配達のために配達日を設定するためにウェブサイトから何かを注文するとき。

日付 (この場合は 2016-07-02) を取得し、それを deliveryDate 変数に設定します (そしてデータベースに設定します)。

ファイルにテキスト「DTM:76」が含まれているかどうかを確認するために Java で Scanner を使用し、 Find a string (or a line) in a txt File Java のような行の日付部分を読み取ることを考えています。EDIで可能/効果的ですか、またはそれを行うより良い方法はありますか?

私にとって最良の解決策は、次のようなものです。

    if (DTM+76:YYYYMMDD::102 exists)
            {
                //set the deliveryDate by getting only YYYYMMDD from DTM:76:20160702:102
                deliveryDate= get..("20160702");
            }

EDI と納期に関する情報: http://www.gs1.org/sites/default/files/docs/eancom/ean02s4/part2/insdes/053.htm https://www.stylusstudio.com/edifact/D96A/ ORDERS.htm

助言がありますか?

4

2 に答える 2

1

正規表現によるパターン マッチングを使用して、有効な行、つまり DTM+76: の後に有効な日付形式を一致させることをお勧めします。

JDoc を参照してください。

https://docs.oracle.com/javase/7/docs/api/java/util/regex/Pattern.html

ここで、一致が見つかった場合、一致の日付部分 (: 文字の末尾) を簡単に取得して、それを DB に追加できます。

于 2016-06-02T08:24:44.463 に答える