Hei! Saya sedang belajar Go Lang, dan saya mengambil beberapa Nota asas mengenai Pengertian saya dan walaupun saya baru sahaja menerbitkannya di sini. Mereka tidak difikirkan dengan baik atau ditulis dengan baik tetapi saya hanya mencatat nota dari semasa ke semasa untuk rujukan saya.
Saya sedang mengikuti Kursus Udemy oleh Maximilian Schwarzmüller,
Nota
Menulis dalam Fail
- pakej os menyediakan fungsi yang dipanggil WriteFile yang mengambil nama pakej, data yang akan disimpan dalam mod fail dan fail, yang akan menjadi kebenaran mengubah suai fail.
func writeBalanceFiles(balance float64) {
balanceText := fmt.Sprint(balance)
os.WriteFile("balance.txt", []byte(balanceText), 0644)
}
Salin selepas log masuk
Membaca daripada fail
- kadangkala apabila kita mendapat 2 nilai pulangan daripada fungsi, kita boleh menggunakan nama pembolehubah khas _ yang bermaksud kita mahu mendapatkan nilai tetapi kita tidak mahu menggunakannya.
data, _ := os.ReadFile("balance.txt")
Salin selepas log masuk
- di sini data akan datang dengan jenis bait, jadi untuk mengendalikannya, kami hanya boleh menukar data itu menjadi rentetan
- kita memerlukan rentetan data dalam nombor apungan, jadi untuk itu kita boleh menggunakan pakej strconv, yang memberi kita kaedah berbeza untuk mengendalikan operasi rentetan
- kita boleh menggunakan kaedah ParseFloat, yang akan menukar rentetan kepada nombor terapung, dengan itu kita perlu memberikan nilai rentetan dan bitSize yang akan menjadi 32 atau 64
func readFile() float64 {
data, _ := os.ReadFile("balance.txt")
balanceText := string(data)
balance, _ := strconv.ParseFloat(balanceText, 64)
return balance
}
Salin selepas log masuk
- nilai bait tidak boleh ditukar terus kepada mana-mana jenis selain nilai rentetan dan rentetan secara langsung tidak boleh ditukar kepada mana-mana jenis lain, yang memerlukan penggunaan pakej strconv
Ralat pengendalian
- Dalam GO, terdapat jenis khas sebagai ralat yang boleh digunakan untuk memberikan ralat tersuai yang datang daripada pakej ralat terbina dalam
- Dalam GO, kita boleh menggunakan nol untuk menyemak nilai null
- hampir semua pakej memberikan ralat sebagai nilai pulangan dengan nilai utama, kami menggunakan ralat untuk untuk menyemak sama ada terdapat nilai sifar
- Jadi, jika ralat tidak sifar itu bermakna terdapat ralat dan dalam kes itu kita boleh memberikan beberapa tindak balas ralat
if err != nil {
return 1000, errors.New("failed to find balance file")
}
Salin selepas log masuk
var accountBalance, err = readFile()
if err != nil {
fmt.Println("ERROR")
fmt.Println(err)
fmt.Println("===============")
}
Salin selepas log masuk
Panik!
- terdapat kaedah terbina dalam dipanggil panik() yang akan menghentikan pelaksanaan program dan memberikan ralat khas
if err != nil {
fmt.Println("ERROR")
fmt.Println(err)
fmt.Println("===============")
panic("Can't Continue Sorry!")
}
Salin selepas log masuk
Atas ialah kandungan terperinci Belajar GO : - Pengendalian Fail, Pengendalian Ralat. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!