Belajar GO : - Pengendalian Fail, Pengendalian Ralat

Mary-Kate Olsen
Lepaskan: 2024-10-15 12:06:41
asal
1068 orang telah melayarinya

Learning GO : - File Handling, Error Handling

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!

sumber:dev.to
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan