1

私の英語が下手でしたらすみません...私はブラジル人です。

FileHelpers は階層ファイルをサポートしていますか?

私は、階層レコードを持つフラット ファイルを扱っています。ドキュメントにこの機能が見つかりません。

ありがとう!アラン

4

1 に答える 1

3

はい、2 つのレベルの場合は MasterDatail の方法を使用でき、3 つ以上のレコード形式を解析する必要がある場合は MultirecordEngine を使用できます。

マスター詳細:

http://www.filehelpers.net/example/MasterDetail/SimpleMasterDetail/

マスター レコードとして顧客、詳細として注文を含むこのファイルの場合:

10248|VINET|5|04071996|01081996|16071996|3|32.38 
10249|TOMSP|6|05071996|16081996|10071996|1|11.61 
ALFKI;Alfreds Futterkiste;Maria Anders;Sales Representative;Obere Str. 57;Berlin;Germany 
ANATR;Ana Trujillo Emparedados y helados;Ana Trujillo;Owner;Avda. de la Constitución 2222;México D.F.;Mexico 
10250|HANAR|4|08071996|05081996|12071996|2|65.83 
10111314012345 
11101314123456 

次のようなものを使用する必要があります。

RecordAction ExampleSelector(string record)
{
   if (Char.IsLetter(record[0]))
      return RecordAction.Master;
   else
      return RecordAction.Detail;
}

var engine = new MasterDetailEngine<Customers, Orders>(new MasterDetailSelector(ExampleSelector));

// to Read use:
MasterDetails[] res = engine.ReadFile("TestIn.txt");

マルチレコード

http://www.filehelpers.net/example/Advanced/MultiRecordSample/

よろしく

于 2012-07-27T02:35:22.103 に答える