ホームページ >バックエンド開発 >Golang >Go でファイルの位置を取得するにはどうすればよいですか?

Go でファイルの位置を取得するにはどうすればよいですか?

Barbara Streisand
Barbara Streisandオリジナル
2024-11-07 01:23:02905ブラウズ

How Can I Retrieve the File Position in Go?

Go でのファイル位置の取得: fgetpos の代替手段

C または C では、開発者は多くの場合、 fgetpos() 関数を使用してファイル位置を確認します。ストリーム内のファイルの位置。 Go の標準ライブラリは専用の fgetpos に対応するものを明示的に提供していませんが、ファイルの位置を取得するための代替メソッドが存在します。

解決策:

The File.Seek()関数は便利なソリューションを提供します。現在の位置を基準にして 0 バイトの位置をシークすると、ファイルの絶対オフセットを表す結果の位置を取得できます。

import (
    "io"
    "os"
)

func main() {
    f, err := os.Open("file.txt")
    if err != nil {
        // handle error
    }

    offset, err := f.Seek(0, io.SeekCurrent)
    if err != nil {
        // handle error
    }

    // offset now contains the absolute file position
}

このアプローチは、基本的に、現在の位置までシークすることで fgetpos の動作をエミュレートします。位置を返しながら、結果の位置も返します。ファイルの絶対オフセットを決定できるため、さまざまなシナリオで役立ちます。

以上がGo でファイルの位置を取得するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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