add new file go/l13.go for work json and update l5.go to change fmt.Println on log.Fatalf
This commit is contained in:
parent
dc40ebd598
commit
d7baf0b099
6 changed files with 43 additions and 2 deletions
|
|
@ -25,8 +25,14 @@ reflect:
|
||||||
reflect.DeepEqual(x1, x2) - для сравнения срезов
|
reflect.DeepEqual(x1, x2) - для сравнения срезов
|
||||||
os:
|
os:
|
||||||
.Exit(0/1) - для принудительного завершения программы
|
.Exit(0/1) - для принудительного завершения программы
|
||||||
|
.ReadFile(x.json) - для получения того что находится в файле x.json
|
||||||
map:
|
map:
|
||||||
map[ТипКлюча]ТипЗначения{} - для объчвления map
|
map[ТипКлюча]ТипЗначения{} - для объчвления map
|
||||||
delete(x, "Ключ") - для удаления элемента из map
|
delete(x, "Ключ") - для удаления элемента из map
|
||||||
x1[x2] = x3 - для добавления элемента в map
|
x1[x2] = x3 - для добавления элемента в map
|
||||||
value, ok := x1[x2] - для проверки существования элемнта в map, ok = true/false, value = значению x1[x2]
|
value, ok := x1[x2] - для проверки существования элемнта в map, ok = true/false, value = значению x1[x2]
|
||||||
|
encoding/json:
|
||||||
|
.Unmarshal(x1, &x2) - для записи в x2 информации формата json, той сырой информации из x1, теперь можно обращаться к ней по x2.ИмяИзСтруктуры
|
||||||
|
github.com/joho/godotenv:
|
||||||
|
godotenv.Load() - для инита .env файла
|
||||||
|
os.Getenv("api") - для записи в переменную значения из env файла с ключом api
|
||||||
29
go/l13.go
Normal file
29
go/l13.go
Normal file
|
|
@ -0,0 +1,29 @@
|
||||||
|
package main
|
||||||
|
|
||||||
|
import (
|
||||||
|
"fmt"
|
||||||
|
"encoding/json"
|
||||||
|
"log"
|
||||||
|
"os"
|
||||||
|
)
|
||||||
|
|
||||||
|
type Json struct{
|
||||||
|
Name string `json:"name"`
|
||||||
|
Version int `json:"ver"`
|
||||||
|
Active bool `json:"act"`
|
||||||
|
}
|
||||||
|
|
||||||
|
func main() {
|
||||||
|
jsonn, err := os.ReadFile("l13.json")
|
||||||
|
if err != nil {
|
||||||
|
log.Fatalf("Ошибка при чтении файла: %v", err)
|
||||||
|
}
|
||||||
|
var conf Json
|
||||||
|
err = json.Unmarshal(jsonn, &conf)
|
||||||
|
if err != nil {
|
||||||
|
log.Fatalf("Ошибка при чтении файла: %v", err)
|
||||||
|
}
|
||||||
|
if conf.Active {
|
||||||
|
fmt.Println("Статус:", conf.Active)
|
||||||
|
}
|
||||||
|
}
|
||||||
5
go/l13.json
Normal file
5
go/l13.json
Normal file
|
|
@ -0,0 +1,5 @@
|
||||||
|
{
|
||||||
|
"name": "program",
|
||||||
|
"age": 228,
|
||||||
|
"act": true
|
||||||
|
}
|
||||||
3
go/l5.go
3
go/l5.go
|
|
@ -4,12 +4,13 @@ import (
|
||||||
"fmt"
|
"fmt"
|
||||||
"os"
|
"os"
|
||||||
"github.com/joho/godotenv"
|
"github.com/joho/godotenv"
|
||||||
|
"log"
|
||||||
)
|
)
|
||||||
|
|
||||||
func main() {
|
func main() {
|
||||||
err := godotenv.Load()
|
err := godotenv.Load()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
fmt.Println("не")
|
log.Fatalf("%v\n", err)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
api := os.Getenv("api_key")
|
api := os.Getenv("api_key")
|
||||||
|
|
|
||||||
BIN
go/output/l13
Executable file
BIN
go/output/l13
Executable file
Binary file not shown.
BIN
go/output/l5
BIN
go/output/l5
Binary file not shown.
Loading…
Reference in a new issue