Go 言語は多くのファイル操作をサポートしています。さまざまなシナリオで、対応する処理メソッドがあります。このセクションでは、テキスト ファイルの読み取りおよび書き込み操作を紹介します。
コンテンツ
表示
プレーンテキストファイルを書き込む
Go 言語の fmt パッケージの print 関数は強力かつ柔軟であるため、プレーン テキスト データの書き込みは非常に簡単で簡単です。サンプルコードは次のとおりです。
package main
import (
"bufio"
"fmt"
"os"
)
func main() {
// 新しいファイルを作成し、コンテンツを書き込む
filePath:= "./output.txt"
file、err:= os.OpenFile(filePath、os.O_WRONLY | os.O_CREATE、0666)
if err!= nil {
fmt.Printf("ファイルを開くエラー=%v \ n "、err)
return
}
//すぐに閉じる
defer file.Close()
//コンテンツを書き込む
str:= "https://it-kiso.com/golang/\n" // \ n \ rは改行を示すtxtファイルで改行効果を確認するには\r\nを使用する必要があります
//書き込むときは、バッファ付きの*Writerを使用します
witer:= bufio.NewWriter(file)
for i:= 0; i <3; i ++ {
writer.WriteString(str)
}
//ライターはバッファリングされるため、WriterStringメソッドを呼び出すと、内容が最初にバッファに書き込まれます
//したがって、フラッシュメソッドを呼び出して、バッファ内のデータを実際にファイルに書き込みます。
writer.Flush()
}
上記のコードを実行すると、現在のディレクトリに output.txt ファイルが生成されます。ファイルの内容は次のとおりです。
https://it-kiso.com/golang/
https://it-kiso.com/golang/
https://it-kiso.com/golang/
プレーンテキストファイルを読み取る
プレーン テキストでデータを開いたり読み取ったりすることは、データをプレーン テキストで書き込むのと同じくらい簡単です。形式の複雑さによっては、テキストを解析して元のデータを再構築する作業が若干複雑になる場合があります。
サンプルコードは次のとおりです。
package main
import(
"bufio"
"fmt"
"io"
"os"
)
func main()
//ファイルを開く
file, err:= os.Open("./output.txt")
if err != nil {
fmt.Println("ファイルが開けませんでした = "、err)
}
//fileハンドラをすぐに閉じて、メモリリークが発生しないようにする
defer file.Close()
//バッファリングされた*Readerを作成します。
reader:= bufio.NewReader(file)
for {
str, err:= reader.ReadString( '\n')//新しい行が読み込まれると、終了します。
if err == io.EOF { // io.EOFはファイルの終わりを表します。
break
}
fmt.Print(str)
}
fmt.Println("ファイルの読み取りが終了しました...")
}
操作の結果は次のようになります。
go run main.go
https://it-kiso.com/golang/
https://it-kiso.com/golang/
https://it-kiso.com/golang/
ファイルの読み取りが終了しました…
「 Go 言語でのプレーン テキスト ファイルの読み取りおよび書き込み操作」についてわかりやすく解説!絶対に観るべきベスト2動画
【たった1時間で学べる】Go言語のプログラミング初心者向けの超入門講座【文字書き起こし、ソースコードも完全無料!】
GO プログラミング テキスト ファイルの読み取り