Go でファイル全体を文字列変数に読み取る
Go では、ファイルの内容を読み取りたい状況に遭遇することがあります。小さなファイルを文字列変数に変換することで、ファイルを 1 行ずつ繰り返すことなく効率的に処理できます。幸いなことに、Go エコシステムは、このタスクに対する便利なソリューションを提供します。
io.ReadFile を使用したソリューション
ファイル全体を文字列変数に読み取るために、Go は io を提供します。 io パッケージの .ReadFile 関数。 io.ReadFile の構文は次のとおりです。
func ReadFile(filename string) ([]byte, error)
io.ReadFile は、読み取りたいファイルへのパスを表す単一の引数 filename を受け取ります。ファイルの内容を含むバイト スライス ([]byte) とエラー値 (error) の 2 つの値が返されます。
文字列への変換
デフォルト, io.ReadFile はバイトスライスを返しますが、それを文字列に変換したい場合があります。これは、次のコードを使用して実現できます。
s := string(buf)
ここで、buf は io.ReadFile によって返されるバイト スライスです。
使用例
これは、io.ReadFile を使用してファイル全体を読み込む方法を示す例です。 string:
package main import ( "fmt" "io/ioutil" ) func main() { filename := "test.txt" buf, err := ioutil.ReadFile(filename) if err != nil { fmt.Println("Could not read file:", err) return } str := string(buf) fmt.Println("File contents:") fmt.Println(str) }
このコードは、test.txt ファイルの内容をバイト スライスに読み取り、それを文字列に変換します。その後、文字列がコンソールに出力されます。
以上がGoでファイル全体を文字列に読み取る方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。