リッチテキストに表示するには?

解決


うい  2005-10-07 17:54:19  No: 126109

環境はVB.net2003です。
URLをダウンロード後テキストファイルに書き込む前に
すでにそのURLがテキストファイルに書き込まれてるとダブるので
チェック機能を作ろうとしてます。
現時点であるURLをReadToEndで読み込んで一度リッチテキストに表示しようとしたら、一瞬だけひょうじされてすぐに消えます。
ためしにfsw.WriteLineを「’」で消して動かしてもだめでした。
一応ビルドはできます。
初心者の質問ですがよろしくお願いします。
  
’urllist.txtにはすでに5個リストがある
Dim fsk As FileStream = New FileStream("c:\urllist.txt", FileMode.OpenOrCreate)
            Dim fsr As StreamReader = New StreamReader(fsk)
            Dim fsw As StreamWriter = New StreamWriter(fsk)

Dim fsrr As String = fsr.ReadToEnd()

                    RichTextBox1.Text = fsrr  ’ここの時点でおかしい
                    If -1 = fsrr.IndexOf(url) Then
                        fsw.WriteLine(url)
                    End If




fsw.close()
fsr.close()


我龍院忠太  2005-10-07 19:15:15  No: 126110

>一瞬だけひょうじされてすぐに消えます。
提示されたコードでは判断できませんが、そのようなコードになっているのでしょう。
問題の部分にブレークポイントを設定して、ステップで実行すれば、どこでRichTextBox1.Textが
書き換わっているかはすぐわかると思いますが。


特攻隊長まるるう  2005-10-07 19:17:15  No: 126111

>現時点であるURLをReadToEndで読み込んで一度リッチテキストに表示しようとしたら、一瞬だけひょうじされてすぐに消えます。
http://madia.world.coocan.jp/cgi-bin/VBBBS2/wwwlng.cgi?print+200510/05100020.txt
↑の続きの話なら、ループして長さ0の文字列で上書きしてる可能性が一番高いです。

>    Dim fsrr As String = fsr.ReadToEnd()
>    RichTextBox1.Text = fsrr  ’ここの時点でおかしい
>    fsw.Close()
>    fsr.Close()
このコードのみでは、そのような現象は起きません。
Text プロパティに書き込んだ文字列は、上書きされるか、
プログラム終了まで変化しません。

もしくは RichTextBox の文字列に追加して書き込みたいという事ですか?
    RichTextBox1.Text = RichTextBox1.Text & fsrr


うい  2005-10-09 20:17:51  No: 126112

レス遅くなってすいません。
前回、For〜Next内での宣言でうまく動作しなかったんで気をつけてたんですが、今度は他のループに入ってました。
おさわがせしました。

ステップ実行は知らなかったので勉強になりました。
次から困ったときは、F5押すだけじゃなく他の操作もやってみます。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加