cfg ini txt文件的区别
时间: 2023-10-23 15:14:31 浏览: 66
CFG、INI和TXT文件都是文本文件,但其用途有所不同。
CFG文件是一种配置文件,主要用于存储应用程序或操作系统的配置信息,例如网络设置、声音设置、用户选项等。它通常由开发人员编写,并由应用程序读取和解析,以确定应用程序的行为。
INI文件也是一种配置文件,但与CFG文件不同,它是一种较早的配置文件格式,主要用于存储Windows操作系统的配置信息。INI文件的格式比较简单,通常由多个节(section)和多个键值对(key-value pairs)组成。
TXT文件则是一种普通文本文件,通常用于存储纯文本信息,例如日志、说明文档等。它没有特定的格式或结构,只是包含纯文本信息。
总的来说,CFG和INI文件用于存储应用程序或系统的配置信息,而TXT文件则用于存储普通文本信息。
相关问题
go ini文件
Go 语言中可以通过第三方库 `github.com/go-ini/ini` 来读写 INI 配置文件。
以下是一个示例代码,用于读取 `config.ini` 文件中的配置项:
```go
package main
import (
"fmt"
"github.com/go-ini/ini"
)
func main() {
cfg, err := ini.Load("config.ini")
if err != nil {
fmt.Printf("Fail to read file: %v", err)
return
}
fmt.Println(cfg.Section("").Key("app_name").String())
fmt.Println(cfg.Section("database").Key("host").String())
fmt.Println(cfg.Section("database").Key("port").Int())
}
```
以上代码中,通过 `ini.Load()` 方法加载 `config.ini` 文件,然后通过 `cfg.Section()` 方法获取指定的节,再通过 `Key()` 方法获取指定的键,最后通过 `String()` 或 `Int()` 方法获取键的值。
例如,`cfg.Section("").Key("app_name").String()` 表示获取默认节中的 `app_name` 键的值。`cfg.Section("database").Key("host").String()` 表示获取 `database` 节中的 `host` 键的值。`cfg.Section("database").Key("port").Int()` 表示获取 `database` 节中的 `port` 键的整数值。
如果要写入 INI 文件,可以使用 `cfg.SaveTo()` 方法,例如:
```go
cfg.Section("").Key("app_name").SetValue("My App")
cfg.Section("database").Key("host").SetValue("localhost")
cfg.Section("database").Key("port").SetValue(3306)
cfg.SaveTo("config.ini")
```
以上代码中,通过 `SetValue()` 方法设置键的值,最后通过 `cfg.SaveTo()` 方法将修改后的配置保存到文件中。
批处理文件读取cfg文件
可以通过使用批处理文件中的 `for` 命令和 `set` 命令来读取 cfg 文件。下面是一个示例批处理文件,演示如何读取 cfg 文件中的键值对:
```
@echo off
setlocal enabledelayedexpansion
set CFG_FILE=config.cfg
for /f "tokens=1,2 delims==" %%a in (%CFG_FILE%) do (
set key=%%a
set value=%%b
echo !key! = !value!
)
endlocal
```
在上面的示例中,我们假设 cfg 文件名为 `config.cfg`,并将其存储在批处理文件相同的目录中。`for` 命令用于逐行读取 cfg 文件中的每个键值对,并使用 `=` 作为分隔符将每个键值对分成两个标记。`set` 命令用于将每个标记分配给相应的变量(`key` 和 `value`)。请注意,由于 `set` 命令在批处理文件中是立即执行的,因此需要使用 `enabledelayedexpansion` 选项来启用变量延迟扩展,以确保正确地读取变量值。最后,我们使用 `echo` 命令将每个键值对输出到控制台。