C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[1]: Trimについて 文字間のスペースを詰めたい


(過去ログ 100 を表示中)

[トピック内 13 記事 (1 - 13 表示)]  << 0 >>

■59591 / inTopicNo.1)  Trimについて 文字間のスペースを詰めたい
  
□投稿者/ Haru (1回)-(2011/06/01(Wed) 15:11:43)

分類:[C#] 

あるボタンを押し、テキストファイル(複数行ある)を選び、一行ずつテキストボックスに入れていき
スペースがあったらつめて表示させたい。
以下のPGを実行したところ、
1行目の先頭のスペースしかつまらなかったので、文字と文字の間に入っているスペースを詰めるにはどうしたらいいでしょうか。
アドバイスください。

openFileDialog1.Filter = "テキスト(*.txt,*.dat,*.html)|*.txt;*.dat;*.html|" + "All files(*.*)|*.*";
if (openFileDialog1.ShowDialog() != DialogResult.OK)
{
return;
}
textBox1.Text = openFileDialog1.FileName;
string line, str = "";
StreamReader sr = new StreamReader(textBox1.Text, Encoding.Default);
if (File.Exists(textBox1.Text))
{
while ((line = sr.ReadLine()) != null) //テキストファイルを一行づつ読み込む
{
str = str + line + "\r\n";               
textBox2.Text = str.Trim();
}

}
sr.Close();

引用返信 編集キー/
■59592 / inTopicNo.2)  Re[1]: Trimについて 文字間のスペースを詰めたい
□投稿者/ shu (744回)-(2011/06/01(Wed) 15:19:33)
No59591 (Haru さん) に返信

             
> textBox2.Text = str.Trim();
textBox2.Text = str.Replace(" ","");
でどうでしょう?
引用返信 編集キー/
■59595 / inTopicNo.3)  Re[1]: Trimについて 文字間のスペースを詰めたい
□投稿者/ ピース (1回)-(2011/06/01(Wed) 15:51:42)
String str の最終結果内のスペースをすべて取り除くのであれば、shu さんの方法でできます。
(全角スペースにも対応する場合には工夫してください。)
# しかし、この結果を求めているのであれば、わざわざテキストファイルの内容を1行ずつ読む必要はなく、
# 全テキストを読んでからReplaceすればいいのでは?

そうではなく、テキストファイルから1行ずつ読み取ったテキストについて前後文字をトリムするのであれば、
1行ずつ読み込んだものをトリムすればよいです。
引用返信 編集キー/
■59598 / inTopicNo.4)  Re[1]: Trimについて 文字間のスペースを詰めたい
□投稿者/ Mira (48回)-(2011/06/01(Wed) 16:12:13)
読み込んだ文字を足す前にTrimしないとダメではないですか?

> str = str + line + "\r\n";               
> textBox2.Text = str.Trim();

str = str + line.Trim + \r\n";
textBox2.Text = str;
引用返信 編集キー/
■59600 / inTopicNo.5)  Re[2]: Trimについて 文字間のスペースを詰めたい
□投稿者/ shu (745回)-(2011/06/01(Wed) 16:26:59)
どぼんさんにマルチポストされてますね。
どぼんさんのとこはマルチポスト時のルールが決まってますのでそれに従って下さい。
引用返信 編集キー/
■59621 / inTopicNo.6)  Re[3]: Trimについて 文字間のスペースを詰めたい
□投稿者/ Haru (2回)-(2011/06/02(Thu) 11:25:20)
No59600 (shu さん) に返信
> どぼんさんにマルチポストされてますね。
> どぼんさんのとこはマルチポスト時のルールが決まってますのでそれに従って下さい。


すみませんでした。ルールをよく読んでませんでした。
以後気を付けます。
解決済み
引用返信 編集キー/
■59653 / inTopicNo.7)  Re[4]: Trimについて 文字間のスペースを詰めたい
□投稿者/ Azulean (749回)-(2011/06/02(Thu) 22:28:16)
No59621 (Haru さん) に返信
> すみませんでした。ルールをよく読んでませんでした。
> 以後気を付けます。

ルールを読めば、その対応にならないはずですよ。
(解決していないのに解決済みにしてはいけない、複数サイトで質問を並行するときはきちんとフォローするなど)
引用返信 編集キー/
■59665 / inTopicNo.8)  Re[5]: Trimについて 文字間のスペースを詰めたい
□投稿者/ Haru (5回)-(2011/06/03(Fri) 11:25:26)
No59653 (Azulean さん) に返信
> ■No59621 (Haru さん) に返信
>>すみませんでした。ルールをよく読んでませんでした。
>>以後気を付けます。
>
> ルールを読めば、その対応にならないはずですよ。
> (解決していないのに解決済みにしてはいけない、複数サイトで質問を並行するときはきちんとフォローするなど)

解決しました。というのを入れ忘れていました。

解決済み
引用返信 編集キー/
■59669 / inTopicNo.9)  (削除)
□投稿者/ -(2011/06/03(Fri) 11:54:14)
この記事は(管理者)削除されました
引用返信 編集キー/
■59673 / inTopicNo.10)  Re[7]: (削除)
□投稿者/ shu (750回)-(2011/06/03(Fri) 12:40:33)
とりあえず、
(1)行頭、行末のスペースだけを削除したい。
(2)テキストファイル全体のスペースをすべて削除したい。
のどちらですか?それともそれ以外?


そして、それを解決するのにどのような方法を使われたのでしょうか?
引用返信 編集キー/
■59675 / inTopicNo.11)  Re[8]: (削除)
□投稿者/ Haru (6回)-(2011/06/03(Fri) 13:03:02)
No59673 (shu さん) に返信
> とりあえず、
> (1)行頭、行末のスペースだけを削除したい。
> (2)テキストファイル全体のスペースをすべて削除したい。
> のどちらですか?それともそれ以外?
>
>
> そして、それを解決するのにどのような方法を使われたのでしょうか?

(2)をやりたくて、textBox2.Text = str.Replace(" ","");
で解決しました。
解決済み
引用返信 編集キー/
■59714 / inTopicNo.12)  Re[6]: Trimについて 文字間のスペースを詰めたい
□投稿者/ Azulean (750回)-(2011/06/04(Sat) 08:09:18)
No59665 (Haru さん) に返信
> ■No59653 (Azulean さん) に返信
>>ルールを読めば、その対応にならないはずですよ。
>>(解決していないのに解決済みにしてはいけない、複数サイトで質問を並行するときはきちんとフォローするなど)
>
> 解決しました。というのを入れ忘れていました。

くどいようですが、どぼんさんのところでルール違反のままになっていますので、今一度ご確認ください。
「報告する」とは、「解決しました」の一言では足りません。どのようにすればよいかについては、ルールをお読み頂きたいと思います。
引用返信 編集キー/
■59716 / inTopicNo.13)  Re[1]: Trimについて 文字間のスペースを詰めたい
□投稿者/ やれやれ (1回)-(2011/06/04(Sat) 11:15:56)
ルール違反後、2度もの忠告を無視するとかすごいね
http://dobon.net/cgi-bin/vbbbs/cbbs.cgi?mode=al2&namber=28609
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -