mirror of
https://github.com/dutchcoders/transfer.sh.git
synced 2024-11-27 06:30:19 +01:00
cb6e5cb0c7
* use dep for vendoring * lets encrypt * moved web to transfer.sh-web repo * single command install * added first tests |
||
---|---|---|
.. | ||
ini.go | ||
ini_linux_test.go | ||
ini_test.go | ||
LICENSE | ||
README.md | ||
test.ini |
go-ini
INI parsing library for Go (golang).
View the API documentation here.
Usage
Parse an INI file:
import "github.com/vaughan0/go-ini"
file, err := ini.LoadFile("myfile.ini")
Get data from the parsed file:
name, ok := file.Get("person", "name")
if !ok {
panic("'name' variable missing from 'person' section")
}
Iterate through values in a section:
for key, value := range file["mysection"] {
fmt.Printf("%s => %s\n", key, value)
}
Iterate through sections in a file:
for name, section := range file {
fmt.Printf("Section name: %s\n", name)
}
File Format
INI files are parsed by go-ini line-by-line. Each line may be one of the following:
- A section definition: [section-name]
- A property: key = value
- A comment: #blahblah or ;blahblah
- Blank. The line will be ignored.
Properties defined before any section headers are placed in the default section, which has the empty string as it's key.
Example:
# I am a comment
; So am I!
[apples]
colour = red or green
shape = applish
[oranges]
shape = square
colour = blue