私はCSVファイルを読むのに本当に素晴らしいライブラリを見つけました - FileHelpers、しかし私はそれに奇妙な問題があります。私はいくつかの助けに感謝します。前もって感謝します !FileHelpersライブラリCSV - 1つの文字が常に右側の最後の列から削除されるのはなぜですか?
マッピング後、私は常に右の最後の列から1文字削除します。例えばについてFileHelpers_2_0_0_bin_docs_wizard.zip
から過去ログ2.0 - 私はFileHelpers.dllバージョン2.0.0を使用してい
私はこのようなCSV(一部の列が引用されているが、いくつかは、それが変更されることがありません)
name;surname
"John";Smith
"Jack";Baker
を持っているとしてファイルを読んだ後:
res[0].Col0 with name
res[0].Col1 with surnam (lack of e at the end)
res[1].Col0 with John
res[1].Col0 with Smit (lack of h at the end)
:
FileHelperEngine<SemicolonsRow> engine = new FileHelperEngine<SemicolonsRow>();
engine.ErrorManager.ErrorMode = ErrorMode.SaveAndContinue;
res = engine.ReadFile("C:\\a.txt");
if (engine.ErrorManager.ErrorCount > 0)
engine.ErrorManager.SaveErrors("C:\\Log.txt");
私はこれを取得します
このようなファイルを読むと:
name;surname;country
"John";Smith;USA
"Jack";Baker;Canada
問題は、3列目にある - 私は得る:countr US Canad
マイFileHelpersクラス:
[IgnoreEmptyLines()]
[DelimitedRecord(";")]
public sealed class SemicolonsRow
{
[FieldOptional()]
[FieldQuoted('"', QuoteMode.OptionalForRead, MultilineMode.AllowForRead)]
public String Col0;
[FieldOptional()]
[FieldQuoted('"', QuoteMode.OptionalForRead, MultilineMode.AllowForRead)]
public String Col1;
[FieldOptional()]
[FieldQuoted('"', QuoteMode.OptionalForRead, MultilineMode.AllowForRead)]
public String Col2;
[FieldOptional()]
[FieldQuoted('"', QuoteMode.OptionalForRead, MultilineMode.AllowForRead)]
public String Col3;
}
任意のアイデア?
ソースファイルに引用符付きのフィールドが含まれていない場合に発生しますか? –
@Simon Whittemore - はい、私は引用符なしですべての列を持っているときに私はまた、カットワードを取得します。 – Barney