2016-06-17 20 views
0

正規表現またはRaptorious.SharpMt940Libを使用してエラーなしでmt940ファイルを解析するにはどうすればよいですか?コード以下regexまたはRaptorious.SharpMt940Libを使用してmt940ファイルを解析する方法は?

は私にエラーを返しました:

var header = new Raptorious.SharpMt940Lib.Mt940Format.Separator("STARTUMSE"); 
     var trailer = new Raptorious.SharpMt940Lib.Mt940Format.Separator("-"); 
     var genericFomat = new Raptorious.SharpMt940Lib.Mt940Format.GenericFormat(header, trailer); 

     using (var fileStream = new FileStream(@"C:\test\ex.txt", FileMode.Open, FileAccess.Read)) 
     { 
      TextReader tr = new StreamReader(fileStream); 
      var parsed = Raptorious.SharpMt940Lib.Mt940Parser.Parse(genericFomat, tr); 
     } 

エラー:

An unhandled exception of type 'System.IO.InvalidDataException' occurred in Raptorious.SharpMt940Lib.dll 
Additional information: Can not find trailer! 

サンプルデータ:ライブラリは、ヘッダとの両方を持っているMT940ファイルを期待し

:20:6307396651830602 
:25:0010-01941/63073966-5183 
:28C:00578/001 
:60F:C155602TRY2683629,41 
:61:1606055Y4774,04NERRNONREF 
:86:GOND: HARRAN MAL.OD.HES20160602/201600000003267 S.GN.EMR OKUL 490 
5631 NOLU ABONENIN ELEKTRIK TUKETIM BEDELI 
:61:160602CY591,20NEFRRONREF 
:86:GOND: BIRECIK MA.OD.HES20160602/201600000003244 S.GN.EMR AYggN CP 
AL 4914861 NOLU ELEKTRIK ABONESININ FATURA ODEMESI 
:61:160602CY2188,54NERRNONREF 
+0

私は、エラーメッセージはかなり明白だと思います。あなたのライブラリは、メッセージの終わりを指定する文字列( ' - 'で指定したもの)を探していて、サンプルデータで見つけられません。また、http://martin.hinner.info/bankconvert/swift_mt940_942.pdfによれば、サンプルデータは標準のmt940のようには見えません。 – villecoder

答えて

1

フッター。あなたのサンプルでは、​​ファイルにはどちらも含まれていません。

お使いの設定では、ファイルは次のようになります。

STARTUMSE 
:20:6307396651830602 
:25:0010-01941/63073966-5183 
:28C:00578/001 
:60F:C155602TRY2683629,41 
:61:1606055Y4774,04NERRNONREF 
:86:GOND: HARRAN MAL.OD.HES20160602/201600000003267 S.GN.EMR OKUL 4905631 NOLU ABONENIN ELEKTRIK TUKETIM BEDELI 
:61:160602CY591,20NEFRRONREF 
:86:GOND: BIRECIK MA.OD.HES20160602/201600000003244 S.GN.EMR AYggN CPAL 4914861 NOLU ELEKTRIK ABONESININ FATURA ODEMESI 
:61:160602CY2188,54NERRNONREF 
- 
関連する問題