会社行きたくなかったんです。

自由になりたくて会社辞めました

VB.net

VB.netでCSVファイルのダブルウォーテーションの中のカンマを取り除く方法

投稿日:

カンマ区切りのCSVファイルの場合、文字列をダブルクォーテーションで囲んである場合があります。
VB.netにはCSVファイルを解読する機能がないようです。

スポンサーリンク

こんな感じのファイルがあると困ります。

"abc,de","fghij","klmno"

列の項目ごとに分けて配列に格納する時に、カンマで分けると、abcとdeが分かれてしまいます。

こういう場合は、「","」を一旦、「*<>*」といった、ファイルに含まれないような文字列に置換してから、「,」を削除し、「*<>*」→「","」とすることで回避できます。

-「","」→「*<>*」
"abc,de*<>*fghij*<>*klmno"-「,」→「」
"abcde*<>*fghij*<>*klmno"

-「*<>*」→「","」
"abcde","fghij","klmno"

列が全て文字列ならこれで問題ないのですが、数字が混ざると困ります。
こういうファイルがあった場合の処理を考えてみました。

"abc,d,e","",1,,"fghij,","klmno"

文字列はダブルクォーテーションでくくり、数字はくくらない。
文字列空欄と数字の空欄も含めるようにしました。

カンマを半角スペースに変換するコードです。

-VB.net

Copyright© 自由になりたくて会社辞めました , 2019 AllRights Reserved Powered by AFFINGER4.