使用c#从X12文件读取GS06段

时间:2014-10-20 02:07:23

标签: c# edi x12

enter image description here

大家好。我是EDI X12的新手。我有一个任务要读取GS Segment 6th字段(GS06)在上面的图像中以红色加下划线。请帮我解释如何在c#中编码以获得GS06的值

3 个答案:

答案 0 :(得分:1)

首先,您需要内存中的完整文档。 然后,通过读取字符106,您将获得分段分隔符。还要为字段分隔符抓取字符4。 根据段分隔符调用Splitstring,您将拥有一系列段。

通常情况下,GS应该是第二个分段,因此数组[1](或者,如安德鲁指出的那样,您可以专门检查以&#34开头的分段; GS"& fieldDelim&&# 34; OG&#34)。 Splitstring再次基于您的字段分隔符,secondArray [5]是您的GS06。

答案 1 :(得分:0)

首先,您需要找到元素分隔符。在您的示例中,它是星号。您的段终结符是波浪号。

ISA段是固定长度的。其他部分是可变长度。对于您的解析器,要查找特定元素,您应该读入文本文件,并根据段终止符解析段。之后,您可以找到您要查找的细分,找出元素分隔符的数量,并找到您的发现值。

在您的示例中,GS OG 字符串将保持不变。所以你可以在文本文件中阅读,当你遇到~GS OG 时,你知道你在正确的位置。使用您对分隔符的了解,可以将您带到字符串中的所需位置。

或使用商业翻译,为您提供更多的地图选项。

答案 2 :(得分:0)

首先将每一行放入数组(您可以拆分'〜'符号),这样第二行就是GS段。然后再将GS段拆分为数组(ypu可以拆分使用' *')。第六个GS段阵列将是GS06。试试这个。同样,你可以获得任何价值。