ファイル関連:INIファイルの書き込みと読込み(WritePrivateProfileStringA, GetPrivateProfileStringA)VB2008でINIファイルを操作する実行例サンプルです。ファイル関連へ書き込むのはWindows APIの「WritePrivateProfileStringA」を使います。 読み込むのはWindows APIの「GetPrivateProfileStringA」を使います。 ■実行画面 INIファイルへ過去込みボタンをクリックすると、2つのキーに書き込みます。 INIファイルから読込みボタンをクリックすると、2つのキーを読み込み、下のテキストボックスに表示します。 ■実行コード Public Class Form1 'Windows API Declare Function WritePrivateProfileString _ Lib "KERNEL32.DLL" Alias "WritePrivateProfileStringA" ( _ ByVal lpAppName As String, ByVal lpKeyName As String, ByVal lpString As String, ByVal lpFileName As String) As Integer Declare Function GetPrivateProfileString _ Lib "KERNEL32.DLL" Alias "GetPrivateProfileStringA" ( _ ByVal lpAppName As String, ByVal lpKeyName As String, ByVal lpDefValue As String, ByVal lpReturnedString As String, _ ByVal nSize As Integer, ByVal lpFileName As String) As Integer 'INIファイルの読込み '引数:セクション , キー , 初期値 ,ファイル名 Public Function IniFileRead(ByVal SecName As String, ByVal KeyName As String, _ ByVal DefValue As String, ByVal Filename As String) As String Dim strResult As String = Space(255) Call GetPrivateProfileString(SecName, KeyName, DefValue, strResult, Len(strResult), Filename) '文末のNULL文字を取り除き返す IniFileRead = Microsoft.VisualBasic.Left(strResult, InStr(strResult, Chr(0)) - 1) End Function 'INIファイルへ書き込み '引数:セクション , キー , 書き込む値 ,ファイル名 Public Sub IniFileWrite(ByVal SecName As String, ByVal KeyName As String, _ ByVal Param As String, ByVal Filename As String) Call WritePrivateProfileString(SecName, KeyName, Param, Filename) End Sub '書き込み Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click IniFileWrite("VB", "2005", "INIファイルテスト", "C:\FileTest.ini") IniFileWrite("VB", "2008", "書き込みデータ", "C:\FileTest.ini") End Sub '読み込み Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click Dim s1 As String s1 = IniFileRead("VB", "2005", "", "C:\FileTest.ini") TextBox1.Text = s1 s1 = IniFileRead("VB", "2008", "", "C:\FileTest.ini") TextBox1.Text = TextBox1.Text & vbCrLf & s1 End Sub End Class Visual Basic 2008 Express Edition実践入門 |