diff --git a/app.go b/app.go index f8227ce..6a436c0 100644 --- a/app.go +++ b/app.go @@ -105,38 +105,39 @@ func (this *App) SetConfig(configPath ...string) { for k, v := range cmap { this.Config.Put(k, v) } - } else { - //文件不存在则写入文件,存在不做处理 - var out bytes.Buffer - err = json.Indent(&out, []byte(this.Config.ToJsonString()), "", "\t") - os.MkdirAll(filepath.Dir(this.configPath), os.ModeDir) - os.Create(this.configPath) - err = ioutil.WriteFile(this.configPath, out.Bytes(), os.ModeAppend) - if err != nil { - this.Error.SetError(err) - } } - //文件如果损坏则不写入配置防止配置文件数据丢失 - //if this.Error.GetError() == nil { + //else { + // //文件不存在则写入文件,存在不做处理 // var out bytes.Buffer - // // err = json.Indent(&out, []byte(this.Config.ToJsonString()), "", "\t") - // + // os.MkdirAll(filepath.Dir(this.configPath), os.ModeDir) + // os.Create(this.configPath) // err = ioutil.WriteFile(this.configPath, out.Bytes(), os.ModeAppend) - // // if err != nil { - // os.MkdirAll(filepath.Dir(this.configPath), os.ModeDir) - // os.Create(this.configPath) - // err = ioutil.WriteFile(this.configPath, out.Bytes(), os.ModeAppend) - // - // if err != nil { - // this.Error.SetError(err) - // } + // this.Error.SetError(err) // } - // - //} else { - // this.Error.SetError(nil) //} + //文件如果损坏则不写入配置防止配置文件数据丢失 + if this.Error.GetError() == nil { + var out bytes.Buffer + + err = json.Indent(&out, []byte(this.Config.ToJsonString()), "", "\t") + + err = ioutil.WriteFile(this.configPath, out.Bytes(), os.ModeAppend) + + if err != nil { + os.MkdirAll(filepath.Dir(this.configPath), os.ModeDir) + os.Create(this.configPath) + err = ioutil.WriteFile(this.configPath, out.Bytes(), os.ModeAppend) + + if err != nil { + this.Error.SetError(err) + } + } + + } else { + this.Error.SetError(nil) + } }