すべてのフィールドにテキストが引用されている CSV ファイルがあります。私の問題は、次のように引用符内に引用符があることです。
"John Doe","I have a 17" screen","Something "A" something else",....
Microsoft.VisualBasic.FileIO と LumenWorks.Framework.IO.Csv を試しましたが、どちらもこれらのフィールド内で引用符を使用できません。
ソース ファイルで適切な二重引用符を使用するオプションがなく、これを手動で解析する必要がある場合は、次の方法が役立ちます。
var split = theCsv.Split(',');
var noQuotesCollection = split.Select(p =>
{
if (p.StartsWith("\"") && p.EndsWith("\"") && p.Length > 1)
return p.Substring(1, p.Length - 2);
return p;
});
CSV ファイルに引用符を付けるには、二重引用符を使用する必要があります。
ここにサンプルがあります
"ここにいくつかのテキストがあります","ここにいくつかのテキストがあります","ここに引用付きのテキストがあります, ""Hello World"""
「、」で文字列を分割してみましたか?それが機能するはずのファイル全体で一貫していると仮定します。もちろん、フィールド内に内部「、」がある場合は、運が悪いです。
複数の文字を分割する例については、このSOスレッドを確認してください。