Hey! Ich lerne gerade Go Lang und mache mir einige grundlegende Notizen zu meinem Konzept, die ich aber auch einfach hier veröffentlichen würde. Sie sind nicht gut durchdacht oder gut geschrieben, aber ich mache mir nur von Zeit zu Zeit Notizen als Referenz.
Ich besuche den Udemy-Kurs von Maximilian Schwarzmüller,
Notizen
Schreiben in Dateien
- Das Betriebssystempaket stellt eine Funktion namens WriteFile bereit, die den Namen des Pakets, die in der Datei zu speichernden Daten und den Dateimodus übernimmt, bei dem es sich um die Dateiänderungsberechtigungen handelt.
func writeBalanceFiles(balance float64) {
balanceText := fmt.Sprint(balance)
os.WriteFile("balance.txt", []byte(balanceText), 0644)
}
Nach dem Login kopieren
Aus einer Datei lesen
- Manchmal, wenn wir zwei Rückgabewerte von einer Funktion erhalten, können wir dann einen speziellen Variablennamen verwenden, was bedeutet, dass wir den Wert erhalten, ihn aber nicht verwenden möchten.
data, _ := os.ReadFile("balance.txt")
Nach dem Login kopieren
- Hier werden die Daten vom Byte-Typ geliefert. Um das zu handhaben, können wir diese Daten nur in einen String konvertieren
- Wir benötigen die Datenzeichenfolge in Gleitkommazahl, daher können wir das Paket strconv verwenden, das uns verschiedene Methoden zur Verarbeitung von Zeichenfolgenoperationen bietet
- Wir können die ParseFloat-Methode verwenden, die die Zeichenfolge in eine Gleitkommazahl umwandelt. Dazu müssen wir den Zeichenfolgenwert und die Bitgröße angeben, die 32 oder 64 sein wird
func readFile() float64 {
data, _ := os.ReadFile("balance.txt")
balanceText := string(data)
balance, _ := strconv.ParseFloat(balanceText, 64)
return balance
}
Nach dem Login kopieren
- Bytewerte können nicht direkt in einen anderen Typ als String konvertiert werden, und Stringwerte können nicht direkt in einen anderen Typ konvertiert werden, was die Verwendung des Pakets strconv erfordert
Fehlerbehandlung
- In GO gibt es einen speziellen Fehlertyp, mit dem benutzerdefinierte Fehler ausgegeben werden können, die aus dem integrierten Fehlerpaket stammen
- In GO können wir Null verwenden, um den Nullwert zu überprüfen
- Fast alle Pakete liefern einen Fehler als Rückgabewert mit einem Hauptwert. Wir verwenden den Fehler, um zu prüfen, ob ein Nullwert vorliegt
- Wenn der Fehler also nicht Null ist, bedeutet das, dass ein Fehler vorliegt. In diesem Fall können wir eine Fehlerantwort ausgeben
if err != nil {
return 1000, errors.New("failed to find balance file")
}
Nach dem Login kopieren
var accountBalance, err = readFile()
if err != nil {
fmt.Println("ERROR")
fmt.Println(err)
fmt.Println("===============")
}
Nach dem Login kopieren
Panik!
- Es gibt eine eingebaute Methode namens panic(), die die Programmausführung stoppt und einen speziellen Fehler ausgibt
if err != nil {
fmt.Println("ERROR")
fmt.Println(err)
fmt.Println("===============")
panic("Can't Continue Sorry!")
}
Nach dem Login kopieren
Das obige ist der detaillierte Inhalt vonGO lernen: - Dateiverwaltung, Fehlerbehandlung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!