単純なファイル入出力
【開発環境】
OS:Win11(64ビット)
go version go1.19.4 windows/amd64
VSCode1.72.2、及びコマンドプロンプト
◆単純な入出力
ファイルへの出力手順
1)os.Create()でファイルを作成
2)os.Write()で書き込み
3)os.Close()でファイルを閉じる
・サンプルプログラム「readwrite.go」
package main
import (
"fmt"
"os"
)
func main() {
//ファイル名
fname := "sample.dat" //「readwrite.go」と同じフォルダに作られる
var file *os.File
var err error
//ファイルへの書き込み
file, err = os.Create(fname)
if err != nil {
_ = fmt.Errorf("%sを開けません。", fname)
}
txt := "これはサンプルテキストです。"
file.Write(([]byte)(txt))
//ファイルを閉じる
file.Close()
const BUFSIZE = 1024 //読み込みバッファーサイズ
//ファイルからの読み込み
file, err = os.Open(fname)
if err != nil {
_ = fmt.Errorf("%sを開けません。", fname)
}
defer file.Close()
buf := make([]byte, BUFSIZE)
for {
n, err := file.Read(buf)
if n == 0 {
break
}
if err != nil {
_ = fmt.Errorf("%sを開けません。", fname)
break
}
fmt.Print(string(buf[:n]))
}
}
・実行
PS D:\GO言語\サンプルプログラム\Go-9> go run readwrite.go
これはサンプルテキストです。