• ベストアンサー

vb2010でテキストファイルの1行置きの読み込み

VB2010です。 フォームにリストボックスとコマンドボタンがあります。 コマンドボタンをおしたら”C:\test.txt”の内容を2行目から一行おきにリストボックスに 表示させたいのですが、どのようなコードを書いたらよいのでしょうか? test.txt内容 aaa あいうえお 123 かきくけこ 456 さしすせそ 789 リストボックスには あいうえお かきくけこ さしすせそ と表示させたいです。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

ファイルの内容をすべてリストボックスに表示するのは出来ているとして回答します。 方法1: 毎回2行ずつ読み込む。 str = sr.ReadLine() str = sr.ReadLine() 'strをリストボックスに表示 方法2: 読み込んだ行をカウントし、偶数のみリストボックスに表示する str = sr.ReadLine() cnt = cnt + 1 If (cnt Mod 2) = 0 Then 'strをリストボックスに表示 End If

参考URL:
http://dobon.net/vb/dotnet/
hike106
質問者

お礼

Hayashi_Trek様 回答ありがとうございます。 1の方法を利用し表示することができました。 For i = 0 To cnt - 1 a = Reader.ReadLine b = Reader.ReadLine list.Items.Add("data" & b) Next ありがとうございました。

関連するQ&A

  • VBレイアウトの落とし穴?

    VB6.0について質問です。 フォームからコマンドボタンによりフォームを起動し重なるような形で表示されている状態なのですが 起動したフォームからコマンドボタンでメッセージボックスを表示すると起動したフォームが消えてしまいます。 メッセージボックスを終了すると再び消えたフォームは表示されるのですが、消えてしまう理由は何でしょうか?? できれば消えないでフォームの上にメッセージボックスを表示したいのです>< ご回答おねがいします、、、

  • textファイルについて

    あるディレクトリーに test.txt aaa.txt があるのですが、 二つのテキストを開いて もし text.txtの3行目に http://www.goo.ne.jp/ があり aaa.txtの10行目にも http://www.goo.ne.jp/ があるとすれば aaa.txtの10行目を消したいのですが、 そんな事って可能ですか?? 色々考えたのですが、aaa.txtの10行目を消す時に 10行目を空にすると言う指定が出来なくて困ってます。 どうしてもaaa.txtの削除が出来ません。 参考までにスクリプトを載せておきます <?php $file_name = array("aaa.txt", "test.txt"); $list = fopen($file_name[0], "a+"); $delete_list = fopen($file_name[1], "r"); $listfile = file($file_name[0]); $listmax = count($listfile); $listfile = file($file_name[1]); $delete_listmax = count($listfile); if ($delete_listmax > 0){ for ($delete_line = 1; !feof($delete_list); $delete_line++){ $delete_lines = fgets($delete_list); $delete_lines = trim($delete_lines); if ($delete_lines){ if (is_file($file_name[0])){ for ($line = 1; !feof($list); $line++){ $lines = fgets($list); $lines = trim($lines); if ($lines){ if ($delete_lines == $lines){ //ここの部分がわからないです fputs($list, "あああ"); echo "O,K\n"; } } } } } } } fclose($delete_list); fclose($list); echo "\n終了\n"; ?> 詳しい方がいましたら宜しくお願いします

    • ベストアンサー
    • PHP
  • VB6.0 ListViewの一行目を表示しないようにするには?

    VB6.0 ListViewの一行目を表示しないようにするには? こんにちは。 環境WinXP,VB6.0です。 リストビューを表示する際に、一行目を表示させたくないのですが、 どのように書けばいいのでしょうか? DBの値をリストビューに表示しているのですが、テストで入れたデータが表示されてしまいます。 かといって、このテストデータが重要な役割をしているので、消したくありません。 このテストデータは、常に一行目に表示されるので、リストビュー表示の際に一行目だけ消して表示したいです。 何か良い方法があればご教授下さい。

  • VB6.0 でのテキストファイルの表示

    .net では、readstream でがばっととって、テキストボックス(読み取り専用)に表示しました。 これと同様のことをVB6.0でチャレンジしたのですが、テキストボックスに表示されるのは最初の一行だけでした。マルチラインのテキストボックス設置後 Private sub command1_click() Dim data as string Open "ファイルパス" for input as #256 Do while EOF(256) line input #256, data loop text1.text=data としたところ、ファイル内の最初の一行目に位置する「%」のみが表示されました。 readonlyもつかえないみたいなので、Listを使うのがよいのでしょうか?ご教示下さい

  • ファイル読み込みについて

    おはようございます。 行き詰ったので質問させてください。 指定したリストBOXの項目(いくつかは分からない)にあるtxtファイルの内容を配列に順に入れたいのですが、方法が分かりません。 やりたい事は・・・ ・リストBOXに入っているファイル名はすべてtxtで昇順に並んでいるので、それらの中身をつなげたいです。 ・たとえば、1.txt(あいうえお) 2.txt(かきくけこ) 3.txt(さしすせそ)となっていたら、それらの内容を配列の0.1.2に入れたあとに、配列の中身を順番にくっつければ「あいうえおかきくけこさしすせそ)。 となるようにしたいです。 txtファイルの中身は文章のように長かったりすることもあります。 私はこの方法しか思いつかなかったのですが、実装方法が分からないので教えていただきたいです。 よろしくお願いします。

  • C#のテキストファイル読み込みについて

    C#のテキストファイル読み込みについて 2次元配列を使います(a[行][列]みたいに テキストファイルを1文字ずつ読み込みます。 そして、改行文字が見つかると行を1つずらします それを繰り返して最後まで読みこむと終わり そんなことをしたいです DOBON.NETでこんなの見つけたんですが 上の処理をしようと思っても、どこをいじればできるのかわかりませんでした //"C:\test.txt"をShift-JISコードとして開く System.IO.StreamReader sr = new System.IO.StreamReader( @"C:\test.txt", System.Text.Encoding.GetEncoding("shift_jis")); //内容を一行ずつ読み込む while (sr.Peek() > -1) { Console.WriteLine(sr.ReadLine()); } //閉じる sr.Close(); よくわかるサイトとかあったら教えてください、お願いします

  • VB 2005 リッチテキストボックス 文字選択

    Visual Basic 2005 Express Editionを使っています。 趣味程度以下のレベルです。よろしくお願い致します。 質問の内容は、リッチテキストボックスの内容を選択(反転表示)して クリップボードに記憶させるコードを知りたいのです。 今、作っているのは、 Formの真ん中に、大き目のリッチテキストボックスを配置して 下にボタンを3つ配置しています。 ボタン1は (1)テキストボックスに"c:\mail\aaa.txt"を表示する。 (2)Cドライブのmailフォルダからaaa.txtをリッチテキストボックスに表示。 TextBox1.Text = "c:\mail\aaa.txt" RichTextBox1. LoadFile(TextBox1.Text, RichTextBoxStreamType.PlainText) と言うふうにしています。 同様に、ボタン2は bbb.txtをリッチテキストボックスに表示、 ボタン3はccc.txtをリッチテキストボックスに表示するようにしています。 使用方法としては、取引先とメールのやり取りを行う際に、 メールのパターンが3種類あって、これまでは、aaa.txtをメモ帳で 開いてはコピペしてメーラーに貼り付け。bbb.txtをメモ帳で開いては メーラーに貼り付け。を繰り返していました。 クリップボードに記憶させるのは、 Clipboard.SetDataObject(RichTextBox1.SelectedText) で、うまく行きましたが、クリップボードに記憶させる文字の選択は 手動でやっています。 また、文字の選択というのは、リッチテキストボックスに表示された、 文字を抜き出して選択するわけではなくて、表示されている全てを 選択(反転文字)にしたいのです。 わかりにくい説明で申し訳ありませんが、よろしくお願い致します。

  • VB6 複数行のテキストをリストへ出力

    VB6 でTextBoxのMultiLineをTrueにして複数行にしてあります。 このテキストのデータをリストへ表示させたいのですが、方法が分かりません。 コマンドクリックイベントへ試しに List1.AddItem Text1.Lines(0) などやってみたのですがエラーしてしまします。 LinesはVB6では使用できないのでしょうか?? ご教授願います。

  • テキストファイルについてのプログラム

    初めまして、VC++2005を使っているプログラム初心者です。 windowsフォームアプリケーションというテンプレートを使ってプログラムを作成したいと考えているのですが、どのようにすればよいのかわからず質問しました。ご指導していただけると嬉しいです。 まず、test.txtというテキストファイルの中に以下の内容があります。 8:00  朝食 12:00 昼食 15:00 おやつ 19:00 夕食 というデータです。 このデータをボタンをクリックするとテキストファイルを1行ずつ読んで行き、15:00という文字が出たらテキストボックスに「おやつの時間」というものを表示する方法とまたそのテキストファイルの内容全体を別のテキストボックスに表示したいのですが、どのようにすればよいのでしょうか? fscanfやfopenなどを使うのですが、どうしてもうまくいかないのでよろしくお願いします。

  • テキストファイルの読み込みとリストボックスへの反映

    VB初心者です。VB2008を使用しています。 2のリストボックス(listbox1,listbox2)があり、 listbox1には("1","2")、listbox2には("A","B")という値がはいっています。 このデータをテキストファイル(test.txt)に次のように保存します [listbox1] 1 2 [listbox2] A B ここまでは出来ました。 そこで質問です。 保存したこれらの値をそれぞれのリストボックスに読み込ませたいのですが、 どのようにすればよいでしょうか。 実行ファイルとテキストファイルは同じフォルダ(c:\testprogram)に入っています。 うまく伝えられませんがよろしくお願い致します。

専門家に質問してみよう