VBのテキスト書き込み読み出し
VB初心者です。
VBのテキスト書き込み読み出しについて質問させていただきます。
~使用オブジェクト~
textbox1 textbox2 button1 button2
現在下記の通りtextbox1とtextbox2に書いた文字(length 10まで)をbutton1 clickで
C:\test.txtに書き出し、 button2 clickでtextbox1 と textbox2に戻すプログラムを書いてみました。
読み込みのところが現在は2個ですが、実用的には膨大な数にしたいと思っています。
単純に沢山書けばいいのでしょうが現実的ではないのでスッキリと書く書き方はないでしょうか?
さらに、例としてtextbox1にAさんの名前textbox2にAさんの年齢をいれたとします。
その際、Bさん以降を登録したいのですがその場合テキストへの書き込みを次行に書き込み
次行を読み込むにはどのように書けばよろしいでしょうか?
ご教授お願い致します。
Public Class Form1
'#####################################################
'"C:\test.txt"へ書き込み
'#####################################################
Private Sub Button1_Click(ByVal sender As System.Object, _
ByVal e As System.EventArgs) Handles Button1.Click
Dim write_data As New System.IO.StreamWriter("C:\test.txt", False, _
System.Text.Encoding.Default)
Dim str As String
Dim str1 As String
str = String.Format("{0, -10}", TextBox1.Text)
str1 = String.Format("{0, -10}", TextBox2.Text)
write_data.Write(str & str1)
write_data.Close()
End Sub
'#####################################################
'"C:\test.txt"の読み込み
'#####################################################
Private Sub Button2_Click(ByVal sender As System.Object, _
ByVal e As System.EventArgs) Handles Button2.Click
Dim Reader As New IO.StreamReader("C:\test.txt", System.Text.Encoding.GetEncoding("Shift-JIS"))
While Reader.Peek() > -1
'10文字取得
Dim c(9) As Char
Dim d(9) As Char
Reader.ReadBlock(c, 0, c.Length)
Reader.ReadBlock(d, 0, d.Length)
TextBox1.Text = c
TextBox2.Text = d
End While
Reader.Close()
End Sub
End Class
お礼
HIROs-NET 様のサンプルを参照しながらコードを記述したらできました。本当にありがとうございました。