2014-10-20 49 views
0

enter image description here使用c#從X12文件讀取GS06段

大家好,我是EDI X12的新手。我有一個任務閱讀GS段6th字段(GS06)在紅色上面圖像下劃線。請幫助我如何在C#代碼獲取該值的GS06

+0

爲什麼你需要找到組控制號碼?您也可以從GE部分獲得相同的值。在你的例子中,ISA控制號碼是相同的(儘管填充了零)。問題可能並非總是如此,但我需要知道你的用例。 – Andrew 2014-10-20 03:55:25

回答

0

要開始,你需要找到元素分隔符。在你的例子中,它是星號。你的段結束符是代字符。

ISA段是固定長度。其他部分是可變長度。對於你的解析器,爲了找到一個特定的元素,你應該閱讀文本文件,並根據段終止符來解析段。之後,您可以找到您要查找的細分受衆羣,找出元素分隔符的數量,並找到您找到的值。

在你的例子中,字符串將是不變的。所以你可以閱讀文本文件,當你遇到〜GS OG你知道你是在正確的位置。使用你的分隔符知識,讓你到你需要在字符串中的位置。

或者使用商業翻譯器,它會給你更多的映射選項。

1

首先,您要在內存中存放完整文檔。 然後,通過讀取字符106,您將具有段分隔符。同時抓住字符4作爲字段分隔符。 根據段分隔符調用拆分字符串,並且您將有一個段數組。

通常,GS應該是第二區段,所以陣列[1](或,如安德魯指出,可以專門爲與「GS」 & fieldDelim &「OG」開始的段檢查)。 再次根據您的字段分隔符分割字符串,secondArray [5]是您的GS06。

0

首先將每行放入數組中(可以拆分'〜'符號),這樣第二行就是GS段。然後再將GS段拆分成數組(ypu可以使用'*'分割)。 GS細分數組中的第六個數組將是GS06.嘗試此操作。類似地,您可以獲得任何值。