根据操作系统程序自动选择不同常量

@

1. 操作

  • 需求:根据操作系统,程序自动选择不同常量的值。
  • 操作:
    • 创建 const__windows_amd64.go文件, 写windows系统要读取的内容
    • 创建const_linux.go文件,写linux系统要读取的内容

2. 示例

需求:
开发环境是windows,生产环境是linux。程序用到的一些文件的位置因系统不同而不同。我们用常量定义这些位置,让程序自动根据所在服务器操作系统来选择常量值。

2.1 定义常量

  • 在程序中创建config包,包中包含如下两个文件:
  • 创建 const__windows_amd64.go 文件,内容如下
package config

const (
	IdRSAFilePath = "D:\\work-space\\go\\src\\crow-logger\\config\\id_rsa"
	LogDirTemp = "D:\\work-space\\go\\src\\crow-logger\\down"
)
  • 创建const_linux.go文件,内容如下:
package config
const (
	IdRSAFilePath = "/etc/crow/id_rsa"
	LogDirTemp = "/down"
)

2.2 引用

fmt.Printf("IdRSAFilePath 的值是:%s", config.IdRSAFilePath)
  • 结果
IdRSAFilePath 的值是:D:\work-space\go\src\crow-logger\config\id_rsaD:\work-space\go\src\crow-logger\config\id_rsa

我的环境是windows,和前边 const__windows_amd64.go 文件中定义的一样。


posted on 2023-02-21 17:45  运维开发玄德公  阅读(15)  评论(0编辑  收藏  举报  来源

导航