dポイントプレゼントキャンペーン実施中!

.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を使うのがよいのでしょうか?ご教示下さい

A 回答 (1件)

FileSystemObject を使いましょう。




参照設定で "Microsoft Scripting Runtime" を参照した場合は

Dim textValue As String
Dim fso As Scripting.FileSystemObject
Dim ts As Scripting.TextStream

Set fso = New Scripting.FileSystemObject
Set ts = fso.OpenTextFile("D:\test.txt", ForReading)
textValue = ts.ReadAll
ts.Close
Me.TextBox1.Text = textValue


参照設定をしない場合は

Const ForReading = 1
Dim textValue As String
Dim fso As Object
Dim ts As Object

Set fso = CreateObject("Scripting.FileSystemObject")
Set ts = fso.OpenTextFile("D:\test.txt", ForReading)
textValue = ts.ReadAll
ts.Close
Me.TextBox2.Text = textValue

です。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!