テキストファイルからデータを読み取り、アプリケーションで同じものを使用する必要があります。 VB 6.0を使用しています。どのコマンドを使用しますか?いくつかのサンプルコードをいただければ幸いです。
テキストファイル全体を文字列に読み込む方法は次のとおりです VB6マニュアル から。
Function FileToString(strFilename As String) As String
iFile = FreeFile
Open strFilename For Input As #iFile
FileToString = StrConv(InputB(LOF(iFile), iFile), vbUnicode)
Close #iFile
End Function
完全なチュートリアルとサンプルコードは見つけることができます ここ
Open Filename$ For Input As #FileHandle
Do While Not EOF(FileHandle) ' Loop until end of file
Line Input #FileHandle, TextLine$ ' Read line into variable
' Your code here
Loop
Close #FileHandle
ここではゲームに少し遅れていますが、Microsoft Scripting Runtime(scrrun.dll)の一部であるFileSystemObjectは、これに非常に役立ちます。
Public Function ReadTextFileAsString(IN_sFilePath As String) As String
Dim myFSO As Scripting.FileSystemObject
Dim myTextStream As Scripting.TextStream
Dim myString As String
'Create a new FileSystemObject
Set myFSO = New Scripting.FileSystemObject
'Make sure file exists:
If myFSO.FileExists(IN_sFilePath) Then
Set myTextStream = myFSO.OpenTextFile(IN_sFilePath, ForReading)
myString = myTextStream.ReadAll()
Call myTextStream.Close
End If
'Assign Return Value
ReadTextFileAsString = myString
'Make sure to clean up when done.
Set myTextStream = Nothing
Set myFSO = Nothing
End Function
テキストストリームからデータを取得するために利用できる他の多くの方法があります。一度に特定の数の文字を読み取ることも、行ごとに読み取ることもできます。 Microsoft Scripting Runtimeをプロジェクト参照に追加する必要がありますが、これは非常に便利です。
ファイルが存在することを確認してください。
If myFSO.FileExists(IN_sFilePath) Then
Set myTextStream = myFSO.OpenTextFile(IN_sFilePath, ForReading)
myString = myTextStream.ReadAll()
Call myTextStream.Close
End If
'Assign Return Value
ReadTextFileAsString = myString
ファイルにプレーンテキストしかない場合は、次のコードを使用して全体を1つの文字列変数に読み込むことができます。
Private Sub ReadFile(strFile As String)
Dim intFile As Integer
Dim strData As String
intFile = FreeFile
Open strFile For Input As #intFile
strData = Input(LOF(intFile), #intFile)
Close #intFile
End Sub
可変長文字列には、最大約20億(2 ^ 31)文字を含めることができます
これがそのためのコードです
Function ReadFileToText(filePath)
Dim objFile, objText, text
Set objFile = CreateObject("Scripting.FileSystemObject")
Set objText = objFile.OpenTextFile(filePath)
text = objText.ReadAll
objText.Close
Set objText = Nothing
Set objFile = Nothing
ReadFileToText = text
End Function