This commit is contained in:
hoteas 2017-08-16 09:38:39 +00:00
parent feb78890a4
commit 03347e295c

35
app.go
View File

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