use UnMarhsalJSON function

develop
skanehira 5 years ago
parent 478923bafe
commit 84fb13d075

@ -135,21 +135,19 @@ func (g *Gui) Form(fieldLabel []string, doneLabel, title, pageName string,
func (g *Gui) LoadJSON() {
labels := []string{"file"}
g.Form(labels, "read", "read from file", "read_from_file", 7, func(values map[string]string) error {
file := values[labels[0]]
b, err := ioutil.ReadFile(file)
fileName := values[labels[0]]
file, err := os.Open(fileName)
if err != nil {
log.Println(fmt.Sprintf("can't read file: %s", err))
log.Println(fmt.Sprintf("can't open file: %s", err))
return err
}
var i interface{}
if err := json.Unmarshal(b, &i); err != nil {
log.Println(fmt.Sprintf("can't unmarshal json: %s", err))
i, err := UnMarshalJSON(file)
if err != nil {
return err
}
g.Tree.UpdateView(g, i)
return nil
})
}
@ -271,6 +269,7 @@ func (g *Gui) parseValue(node *tview.TreeNode) interface{} {
func UnMarshalJSON(in io.Reader) (interface{}, error) {
b, err := ioutil.ReadAll(in)
if err != nil {
log.Println(err)
return nil, err
}
if len(b) == 0 {

Loading…
Cancel
Save