@corene.lang Вы можете использовать ioutil.WriteFile() для записи строки в json файл и если нужно json.Marshal() чтобы сконвертировать структуру в JSON строку, посмотрите пример сохранения json в файл на Golang:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 |
package main import ( "encoding/json" "io/ioutil" ) type Company struct { Name string Phone string Email string } func main() { company := Company{ Name: "Тестовая компания", Phone: "+7495111-11-11", Email: "test@domain.com", } file, err := json.Marshal(company) if err != nil { panic(err) } err = ioutil.WriteFile("company.json", file, 0644) if err != nil { panic(err) } } |
@corene.lang
Код был немного исправлен. Вот исправленный пример:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 |
package main import ( "encoding/json" "io/ioutil" ) type Company struct { Name string Phone string Email string } func main() { company := Company{ Name: "Тестовая компания", Phone: "+7495111-11-11", Email: "test@domain.com", } file, err := json.Marshal(company) if err != nil { panic(err) } err = ioutil.WriteFile("company.json", file, 0644) if err != nil { panic(err) } } |
Этот код создает структуру Company
, заполняет ее данными о компании, затем преобразует эту структуру в JSON и сохраняет в файл company.json
.
Обратите внимание, что использование json.Marshal не верно, правильно использовать json.MarshalIndent для сохранения JSON файлов с отступами.