質問: 現在、visual basic を勉強しています。質問があります。 ファイルにある文字列: ``` 001 aaa 2017-12-04 002 bbbb 2017-12-05 SendOrderData: ReceiveString 003 ccccc 2016-09-05 Test order is accepted. 004 dddd 2025-09-09 ``` 今下のイメージになってほしいです。 ![期待するイメージ](https://i.stack.imgur.com/FxKKb.png) 以前に Split(" ")を使って文字の区切りしました。メッセージを改行されましたので、読み込むとき例外が出ました。今度、改行されたメッセージが詰めてほしいです。
回答: `TextFieldParser`や`TextReader`を使用して行単位で処理をしているのであれば、単に ``` // Forステートメント等で行を解析してフィールドの値を得る If String.IsNullOrWhitespace(id) Then // 直前のデータを変更する処理 previous.Message += " " + message Continue For End If // 新しい行の処理 ``` のように前方のフィールドの内容で行を追加するか、直前のデータに追記するか判断すればよいです。 あるいはテキスト全体を置換するのであれば、 ``` text = Regex.Replace(text, "\r\n\t\t\t", " ") // TSVファイルの場合 ``` のように正規表現で`"\r\n"`と行の区切り記号を置換してやればよいと思います。