diff --git a/main.go b/main.go index 7bbec45..05e4582 100644 --- a/main.go +++ b/main.go @@ -42,6 +42,8 @@ var ( mutex sync.Mutex ) +const configFilePath = "config.yaml" + func main() { // 设置日志文件 logFile, err := os.OpenFile("app.log", os.O_CREATE|os.O_WRONLY|os.O_APPEND, 0644) @@ -54,6 +56,15 @@ func main() { log.SetOutput(logFile) log.SetFlags(log.Ldate | log.Ltime) + // 检查配置文件是否存在,如果不存在则创建并写入默认配置 + if !fileExists(configFilePath) { + err := createDefaultConfig() + if err != nil { + log.Fatal("无法创建默认配置文件:", err) + } + log.Println("已创建默认配置文件") + } + // 读取配置文件 configData, err := ioutil.ReadFile("config.yaml") if err != nil { @@ -99,7 +110,7 @@ func main() {
- 文件列表管理员界面 + 文件列表 管理员界面 @@ -427,3 +438,28 @@ func deleteFile(name string) error { return nil } + +func fileExists(filename string) bool { + _, err := os.Stat(filename) + return err == nil +} + +func createDefaultConfig() error { + defaultConfig := Config{ + Port: 8080, + Username: "admin", + Password: "123456", + } + + configData, err := yaml.Marshal(&defaultConfig) + if err != nil { + return err + } + + err = ioutil.WriteFile(configFilePath, configData, 0644) + if err != nil { + return err + } + + return nil +}