私はテキストファイルが常に同じテキスト形式になっています(テキストファイルのxsdはありません)。テキストファイルマッピング
私はそれからいくつかのクラスにデータをマップしたいと思います。
文字列パーサーや複雑なREGEXを書き始めることを除いて、標準的な方法があります。
私たちはこれに取り組んでいるいくつかの人々であり、他の人が何をしているのか理解する時間がかかりそうなので、実際にはテキストパーサを使いたくありません。
ありがとうございます。
私はテキストファイルが常に同じテキスト形式になっています(テキストファイルのxsdはありません)。テキストファイルマッピング
私はそれからいくつかのクラスにデータをマップしたいと思います。
文字列パーサーや複雑なREGEXを書き始めることを除いて、標準的な方法があります。
私たちはこれに取り組んでいるいくつかの人々であり、他の人が何をしているのか理解する時間がかかりそうなので、実際にはテキストパーサを使いたくありません。
ありがとうございます。
を読むのが好き
xml、yml、json、csvなどの標準形式の場合、解析ライブラリは常にあなたの言語で利用できます。
UPDATE
あなたがそれを提供サンプルからフォーマットをもっとINIファイルですが、エントリがカスタムされているようです。あなたはあなたは、あなたはおそらく、独自のカスタムパーサーを作成する必要があります、機械可読もっと何かに入ってくるのファイル形式を変更することはできませんと仮定NINI
ソリューション:
を拡張することができかもしれません。各フィールドに適切なデータ形式(カスタム列挙型、日付時刻、バージョンなど)を使用して、さまざまな種類のデータをすべて表現して格納するクラスを作成することが最善の方法です(カスタム列挙型、DateTime、バージョンなど)
コード。たとえば、次の行を入力します。
272 298 9.663 18.665 -90.000 48 0 13 2 10 5 20009 1 2 1 257 "C4207" 0 0 1000 0 0
これは単一のクラスまたは構造体です。コンストラクタは上記の文字列をパラメータとして受け入れ、各値を異なるローカルメンバに解析することができます。同じクラスには、必要に応じてすべての値を文字列に変換するSave()メソッドまたはToString()メソッドがあります。
親クラスには、ファイル内のエントリ数に基づいて上記の構造の配列が含まれています。
サンプルテキストファイルの内容を投稿するか、リンクする必要があります。 –
@Moozheあなたが正しいです、私は例を追加しました –