テキストファイルの内容を変数に保存する方法
◆概要
このページは、Visual Basic 6.0でテキストファイルの内容を変数に保存する方法について記載しています。
テキストファイルから1行ずつ読み込み、その内容を変数に保存するには、ファイルシステムオブジェクトのReadLine メソッドで1行ずつ読み込み、その内容を変数に代入します。
なお、従来のファイル入出力ステートメントを利用する場合は、Line Input#ステートメントとEOF関数を使います。
◆ReadLine メソッドとAtEndOfStream プロパティを使って変数に保存する方法
次の例は、ReadLine メソッドとAtEndOfStream プロパティを使って変数に保存し、変数の内容をイミディエイトウィンドウとリストボックスに表示します。
次の例を実行する前に、Visual Basic 6.0のメニュー[表示]-[イミディエイトウィンドウ](ショートカットCtrl+G)でイミディエイトウィンドウを表示させておいてください。
Private Sub Command1_Click() Dim objFileSystem As Object Dim objFile As Object Dim strFileName As String Dim strRecBuff As String 'リストボックスをクリア List1.Clear '読み込むファイル名 strFileName = "C:\Readme.txt" 'ファイルシステムオブジェクトへの参照 Set objFileSystem = CreateObject("Scripting.FileSystemObject") 'ファイルを開く Set objFile = objFileSystem.OpenTextFile(strFileName) 'ファイルの最後に達するまでループ Do Until objFile.atendofstream '読み込んだデータを変数に保存 strRecBuff = objFile.ReadLine '読み込んだ内容をイミディエイトウィンドウに表示 Debug.Print strRecBuff 'リストボックスに表示 List1.AddItem strRecBuff Loop 'ファイルを閉じる objFile.Close 'オブジェクトを開放 Set objFileSystem = Nothing Set objFile = Nothing End Sub |
◆従来のファイル入出力ステートメントを利用して変数に保存する方法
次の例は、従来のファイル入出力ステートメントを利用して変数に保存し、変数の内容をイミディエイトウィンドウとリストボックスに表示します。
次の例を実行する前に、Visual Basic 6.0のメニュー[表示]-[イミディエイトウィンドウ](ショートカットCtrl+G)でイミディエイトウィンドウを表示させておいてください。
Private Sub Command2_Click() Dim strFileName As String Dim intFileNo As Integer Dim strRecBuff As String 'リストボックスをクリア List1.Clear '読み込むファイル名 strFileName = "C:\Readme.txt" '空いているフィル番号を取得 intFileNo = FreeFile 'ファイルを開く Open strFileName For Input As intFileNo 'ファイルの最後に達するまでループ Do Until EOF(intFileNo) '読み込んだデータを変数に保存 Line Input #intFileNo, strRecBuff '変数の内容をイミディエイトウィンドウに表示 Debug.Print strRecBuff 'リストボックスに表示 List1.AddItem strRecBuff Loop 'ファイルを閉じる Close intFileNo End Sub |
◆実行結果