ホームページ  >  記事  >  バックエンド開発  >  GO の学習 : - ファイル処理、エラー処理

GO の学習 : - ファイル処理、エラー処理

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-10-15 12:06:411066ブラウズ

Learning GO : - File Handling, Error Handling

やあ!私は現在 Go Lang を学習しており、自分の Notion に関する基本的なメモをいくつか取っており、それをここで公開したいと思っています。よく考えられて書かれているわけではありませんが、参考のために時々メモしているだけです。

私はMaximilian SchwarzmüllerによるUdemyコースを受講しています。


注意事項

ファイルへの書き込み

  • OS パッケージは、パッケージの名前、ファイルに保存されるデータ、およびファイル変更権限となるファイル モードを受け取る WriteFile と呼ばれる関数を提供します。
func writeBalanceFiles(balance float64) {
    balanceText := fmt.Sprint(balance)
    os.WriteFile("balance.txt", []byte(balanceText), 0644)
}

ファイルからの読み取り

  • 関数から 2 つの戻り値を取得する場合、特別な変数名 _ を使用できます。これは、値を取得したいが使用したくないことを意味します。
data, _ := os.ReadFile("balance.txt")
  • ここでは、データはバイト型で提供されるため、それを処理するには、そのデータを文字列に変換することしかできません
  • 浮動小数点数のデータ文字列が必要なので、文字列操作を処理するさまざまなメソッドを提供する strconv パッケージを使用できます
  • 文字列を浮動小数点数に変換する ParseFloat メソッドを使用できます。これには、文字列値と 32 または 64 の bitSize を指定する必要があります。
func readFile() float64 {
    data, _ := os.ReadFile("balance.txt")
    balanceText := string(data)
    balance, _ := strconv.ParseFloat(balanceText, 64)
    return balance
}
  • バイト値は文字列以外の型に直接変換できません。文字列値は他の型に直接変換できません。これには strconv パッケージを使用する必要があります

エラー処理

  • GO には、組み込みのエラー パッケージからのカスタム エラーを発行するために使用できるエラーとしての特別なタイプがあります。
  • GO では、nil を使用して null 値をチェックできます
  • ほとんどすべてのパッケージはメイン値を持つ戻り値としてエラーを提供します。このエラーを使用して nil 値があるかどうかを確認します
  • したがって、エラーが nil でない場合、それはエラーがあることを意味し、その場合、何らかのエラー応答を返すことができます。
    if err != nil {
        return 1000, errors.New("failed to find balance file")
    }

    var accountBalance, err = readFile()

    if err != nil {
        fmt.Println("ERROR")
        fmt.Println(err)
        fmt.Println("===============")
    }

パニック!

  • プログラムの実行を停止し、特別なエラーを発生させる、panic() という組み込みメソッドがあります。
    if err != nil {
        fmt.Println("ERROR")
        fmt.Println(err)
        fmt.Println("===============")
        panic("Can't Continue Sorry!")
    } 

以上がGO の学習 : - ファイル処理、エラー処理の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。