Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Read/Write "INI" file

Tags:

vb.net

ini

Evening Everyone -

I'm looking for some thoughts on how to read / write values from a windows "ini" structured file. I have a settings file created with another application and I would like to update values of a key within a specified section. I got it working using a buffer.replace process but now realize that some keys are used over in sections and globally replacing a value will cause problems.

Here is a sample of what my ini file looks like

IMPORT-1]
SETTINGS="HELLO"
FILENAME="C:\TEST\TEST1.CSV"

[ENCODE-2]
FILENAME="C:\TEST\REPORT1.XPS"

I've got dozens of blocks so any clarity on accomplishing a read and write of a value within a specific section would be hugely appreciated!

--Cheers & Thanks George

like image 450
George Vaisey Avatar asked Mar 24 '23 20:03

George Vaisey


1 Answers

You can use some of the kernel32 functions.

Private Declare Auto Function GetPrivateProfileString Lib "kernel32" (ByVal lpAppName As String, _
        ByVal lpKeyName As String, _
        ByVal lpDefault As String, _
        ByVal lpReturnedString As StringBuilder, _
        ByVal nSize As Integer, _
        ByVal lpFileName As String) As Integer

This will let you read an ini file

Dim sb As StringBuilder

sb = New StringBuilder(500)
GetPrivateProfileString("IMPORT-1", "SETTINGS", "", sb, sb.Capacity, "test.ini")
like image 175
the_lotus Avatar answered Mar 31 '23 13:03

the_lotus