1 性別|名前|年齢
2 男|佐藤|"25"
太郎
上記の「佐藤 太郎」のように、1行の中で改行される文字列が含まれるデータがあります。
このデータを別のcsvへ追記するのですが、追記の際に以下のように改行部分で行が変わってしまいます。
1 性別|名前|年齢
2 男|佐藤
3 太郎|"25"
これを解消するために、データテーブルの出力+正規表現+文字列追記を行ってみたのですが、これをするとヘッダーデータも一緒に毎回追記されてしまい、以下のようなcsvデータになってしまいます。
1 性別|名前|年齢
2 男|佐藤太郎|"25"
3 性別|名前|年齢
4 女|鈴木良子|"30"
ヘッダーの追記は行わず改行コードを除去するにはどうしたら良いでしょうか?
質問を途中で送ってしまいました。
ご回答いただいた方申し訳ございません。
@111860
問題が解決した場合は、将来の参照用の解決策としてマークを付けます。
改行コードで結合するのでしょうか?
具体的な方法をご教示いただけますでしょうか。
Yoichi
(Yoichi)
6
こんにちは
まず上記はすべてテキストファイルの内容でしょうか?(特に一番上の内容)
これを解消するために、データテーブルの出力+正規表現+文字列追記を行ってみたのですが、これをするとヘッダーデータも一緒に毎回追記されてしまい、以下のようなcsvデータになってしまいます。
追記するデータの一行目を削除できれば良いですか?そうであれば、以下で1行目は削除されます。
System.Text.RegularExpressions.Regex.Replace(yourString,"^.*\n","")
DataRow型(一番上の内容)をcsvへ追記になります。
誠に申し訳ないのですが、
この部分について勘違いしており、これをやっても改行が残っていました。
正規表現の部分は下図になります。
この内容をどのように修正すれば改行コードを除去した上で1行目のヘッダーも削除できますでしょうか。
一転してしまいすみません。
Yoichi
(Yoichi)
8
こんにちは
DataRow型(一番上の内容)をcsvへ追記になります。
そうであればDataRowの段階で不要な改行を削除すれば良いように思えます。対象は名前列だけで良ければ
row("名前") = row("名前").ToString.Replace(vbCR,"").Replace(vbLF,"")
111860
9
確かにそうですね。
JsonからDataRowへ格納するようになっていましたので、DataRowへ代入していく時点でいただいたコードを代入したら無事改行が消えました!
ありがとうございます。