
C#でテキストを読み込んで、文字列型の変数に代入、そしてtextBoxに表示させます。その中にいくつかの空白だけの行があります。その空白行だけを削除する方法がわかりません。わかる方がいらっしゃいましたらよろしくお願いします。
FileStream file = File.Open(@"C:\text.txt",FileMode.Open);
Encoding enc = Encoding.GetEncoding("Shift_JIS");
StreamReader reader = new StreamReader(file,enc);
string A = reader.ReadToEnd();
A = Regex.Replace(A,"\r\n","");
textBox1.Text = A;
とすると全ての改行が削除されてしまいます。
正規表現をうまくつかうと出来るような気がするんですが・・・
No.2ベストアンサー
- 回答日時:
この処理ならばファイルを一行ずつ読み込んでStringBuilderに追加していく方法でいいんじゃないですか?
正規表現でやりたいならば、
A = Regex.Replace(A, "\n{1,}", "\n");
でいいと思います。
ちなみに改行を\r\nで表していますが、EUCのファイルを処理するのでしょうか?
この回答への補足
htmlファイルを読み込んで、正規表現でタグを取り除いてtextBoxに表示させています。\r\nにしないと改行されないのでそうしています。
補足日時:2005/05/23 11:07言われた通りStringBuilderにしてみました。
さほどストレス無く読み込めるようになりました。
ありがとうございました。

No.4
- 回答日時:
1行1行足すときに
Bonjinさんが仰っているStringBuilderを
使えば置換するより速くなると思いますよ。
文字列を連結するには?
http://www.atmarkit.co.jp/fdotnet/dotnettips/029 …
参考URL:http://www.atmarkit.co.jp/fdotnet/dotnettips/029 …

No.3
- 回答日時:
置換する方法ではなく、
1.textBox1.Textを空に
2.テキストを1行ずつ読み込む
3.読み込んだ行が「@"^\s*$"」にマッチするかどうか判別
4.マッチしなければtextBox1.Textに足す。
5.2~4を全行読み込むまで続ける。
といった処理の方が簡単だと思います。
1行ずつ読み込む方法
http://dobon.net/vb/dotnet/file/readfile.html
(下のほうのやり方です。)
正規表現の活用法
http://www.atmarkit.co.jp/fdotnet/basics/regex01 …
参考URL:http://www.atmarkit.co.jp/fdotnet/basics/regex01 …
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
コンボボックスでドロップダウンリストにしたときに・・・・
Visual Basic(VBA)
-
「指定されたキャストは有効ではありません。」とエラーが出てしまいます。
Microsoft ASP
-
DataGridViewに空白がある場合はエラーにしたい
Visual Basic(VBA)
-
-
4
c# 文字列の最後から1文字削除したい
C言語・C++・C#
-
5
CSVファイルの特定行の削除
Visual Basic(VBA)
-
6
DataGridViewの、選択されている行を取り出したい
Visual Basic(VBA)
-
7
VB2005 DataGridView上でクリックを無効にする方法はありますか?
Visual Basic(VBA)
-
8
ラベルの文字列の長さが変わったときに、ラベル位置を自動で変更する方法
C言語・C++・C#
-
9
別のフォームで記述している関数を実行するには?C#
C言語・C++・C#
-
10
DataGridView からの値取得に関して
Visual Basic(VBA)
-
11
C#において、同じインスタンスを何度もnewしてよいでしょうか。
その他(プログラミング・Web制作)
-
12
インスタンス参照でアクセスできない。代わりに型名?
C言語・C++・C#
-
13
visual studio でインデントを自動的に揃えるショートカットキー
その他(プログラミング・Web制作)
-
14
C# DataGridView のヘッダーセル中央揃え
C言語・C++・C#
-
15
VB.net
Visual Basic(VBA)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
正規表現で、特定の文字列を含...
-
Eclipse 改行後のタブ
-
VBA 置換文字がみつからない時
-
csvデータのダブルクォーテーシ...
-
複数のパワーポイントファイル...
-
3回以上の改行を2回にする正...
-
ハングルを日本語に置換
-
xmlファイル内の文字列置換
-
vbsで図形内テキストの置換方法
-
procmailで本文の文字列置換
-
EXCELマクロを用いてグラフの系...
-
VBA 複数の非連続セルのみ指定...
-
特定の列のみ置換を行いたい
-
EXCEL警告「置換対象のデータが...
-
エクセル関数 文字の置き換え...
-
C#で空白行を削除する方法
-
CSVファイルの中で、「 , 」カ...
-
エクセルで数値を全角文字(カ...
-
IEからEdgeへの移行に伴うIMEの...
-
Excelについて質問です。 セル...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
正規表現で、特定の文字列を含...
-
VBA 置換文字がみつからない時
-
各項目がダブルクォーテーショ...
-
○文字目に文字挿入
-
csvデータ ダブルクォーテ...
-
C#で空白行を削除する方法
-
Excel・ユーザーフォームの情報...
-
csvデータのダブルクォーテーシ...
-
秀丸エディタで、「-」や「ー」...
-
フォントの色を保持したままセ...
-
Excel VBA 教えてください。 VB...
-
EXCEL警告「置換対象のデータが...
-
スペースで区切られた氏名から...
-
Eclipse 改行後のタブ
-
Excel VBA リストに一致したデ...
-
テキストボックスの文字列を置...
-
xmlファイル内の文字列置換
-
複数のパワーポイントファイル...
-
特定の列のみ置換を行いたい
-
ハングルを日本語に置換
おすすめ情報