2016-04-29 44 views
0

私はGet-Contentを使ってファイルを読んでいますが、それにいくつかの変更を加えました。それ以降はCSVの構造を持っています。 Out-Fileを行ってからImport-CSVを実行するとうまくいきますが、このオーバーヘッドを取り除き、編集した文字列からCSVを解析したいと考えています。 私が直面している問題は、CSVフィールドがコンマで区切られており、引用符で囲まれていますが、CSVの列のいくつかに複数の文字列が含まれていて、カンマが含まれていますが、これらのカンマは区切り文字ではありません。 私はPowershellで文字列からCSVを解析するには?

$mycsvcontent | ConvertFrom-CSV 

$mycsvcontent | ConvertFrom-CSV -Header "Column1","Column2","etc..." 

しかし、理由は「DELIMないコンマ」の

、CSVの構造が正しく解析されてやろうとしました。

どうすればこの問題を解決できますか?

答えて

0

$ mycsvcontentが適切なオブジェクトである場合、引用符で囲まれたフィールド内のカンマは問題ではありません。

$mycsvcontent = {"a,a","b","c,c"} 
$mycsvcontent | ConvertFrom-CSV -Header "Column1","Column2","etc..." 

戻り

Column1 Column2 etc... 
------- ------- ------ 
a,a  b  c,c 

それだけ配列である場合は、次のことを試してください。

$mycsvcontent = @("a,a","b","c,c") 
$f = '"' + $($mycsvcontent -join '","') + '"' 
$f | ConvertFrom-CSV -Header "Column1","Column2","etc..." 

結果は同じ

です