2010-01-12 60 views
10

最初我想使用SSIS來解析EDI文件,但是我已經看到了一些手動EDI解析器(字段映射),並且希望在C#中使用自動執行此功能。用C#解析EDI平面文件?

例EDI文件:

Example EDI File

+0

其實我最近發現它是X12 820 4010 EDI格式... – ElHaix 2010-01-12 18:25:58

回答

0

我不知道,如果你是開放的商業工具,但我萬一在這裏拋出此鏈接。它可能有助於某人。免責聲明:我沒有以任何方式連接到此提供商。

框架EDI - 爲程序員(商業框架)EDI工具 - 在這裏找到:http://www.edidev.com/

1

這是X12和工作得很好我的用途:

http://x12parser.codeplex.com/

它的命令行,並只爲您的EDI文件輸出一個XML文件。

你可能會適應你的目的。

5

EDI.Net庫是開源的,支持所有三種已知的EDI格式(X12,EDIFact,Tradacoms)。對於X12,您需要提供具有以下預設的IEdiGrammar的自定義實施。

public class EDI_X12Grammar : IEdiGrammar 
{ 
... 
} 

var grammar = new EDI_X12Grammar() 
     { 
      ComponentDataElementSeparator = new[] { '>' }, 
      DataElementSeparator = new[] { '*' }, 
      DecimalMark = null, 
      ReleaseCharacter = null, 
      Reserved = new char[0], 
      SegmentTerminator = '~', 
      ServiceStringAdviceTag = null, 
      InterchangeHeaderTag = "ISA", 
      FunctionalGroupHeaderTag = "GS", 
      MessageHeaderTag = "ST", 
      MessageTrailerTag = "SE", 
      FunctionalGroupTrailerTag = "GE", 
      InterchangeTrailerTag = "IEA", 
     }; 

免責聲明我寫了圖書館。

+0

嗨。我想用你的庫,但似乎我需要使用ASP.net核心?我應該使用哪個框架版本?謝謝 – Fandango68 2018-02-14 06:25:42

+1

@ Fandango68它是用新的dotnetcore sdk工具構建的,但並不僅限於此。它可以在Full .Netframework 4.5和更高版本中使用。查看[nuget.org上支持的框架](https://www.nuget.org/packages/indice.Edi/)查看列表,打開Dependencies部分。 – cleftheris 2018-02-14 08:37:02