カテゴリ: Go言語 更新日: 2026/05/24

Go言語のファイル操作入門!osパッケージを使った基本手順

Go言語のファイル操作入門!osパッケージを使った基本手順
Go言語のファイル操作入門!osパッケージを使った基本手順

先生と生徒の会話形式で理解しよう

生徒

「Go言語でファイルを読み書きするにはどうすればいいですか?」

先生

「Go言語では、osパッケージを使うとファイル操作が簡単にできます。ファイルを作る、開く、読む、書くといった基本操作を覚えることが大切です。」

生徒

「パソコン初心者でも理解できますか?」

先生

「もちろんです。ファイルはノートのようなものだと考えると分かりやすいですよ。これから順番に見ていきましょう。」

1. Go言語のファイル操作とは

1. Go言語のファイル操作とは
1. Go言語のファイル操作とは

Go言語のファイル操作とは、パソコンの中にあるデータファイルを扱うことです。例えば、メモ帳のように文字を書いたり、保存したり、読み込んだりする処理をプログラムで行います。

ファイル操作は多くのプログラムで使われる重要な技術です。ログ保存、設定ファイルの読み込み、データ処理など様々な場面で活用されます。

初心者の方は、まず「ファイルを作る」「書く」「読む」という基本を理解することが重要です。

2. osパッケージとは

2. osパッケージとは
2. osパッケージとは

osパッケージは、ファイル操作や環境情報を扱うための標準パッケージです。

パッケージとは、便利な機能をまとめた部品のようなものです。自分で一から作らなくても、既に用意された機能を使えるのが特徴です。

osパッケージを使うことで、ファイルの作成、削除、読み書きなどが簡単に行えます。

3. ファイルを作成する方法

3. ファイルを作成する方法
3. ファイルを作成する方法

まずはファイルを作る方法です。os.Create関数を使うと新しいファイルを作成できます。


package main

import (
    "os"
)

func main() {
    file, err := os.Create("sample.txt")
    if err != nil {
        panic(err)
    }
    defer file.Close()
}

このコードでは「sample.txt」というファイルが作成されます。deferは処理の最後に実行される命令で、ファイルを閉じる役割があります。

4. ファイルに書き込む方法

4. ファイルに書き込む方法
4. ファイルに書き込む方法

作成したファイルに文字を書き込むにはWriteStringメソッドを使います。


package main

import (
    "os"
)

func main() {
    file, _ := os.Create("sample.txt")
    defer file.Close()

    file.WriteString("こんにちは、Go言語\n")
}

WriteStringは文字列を書き込むための関数です。改行は\nで表現します。

ノートに文字を書くイメージで考えると分かりやすいです。

5. ファイルを読み込む方法

5. ファイルを読み込む方法
5. ファイルを読み込む方法

次に、ファイルの内容を読み込む方法です。os.ReadFileを使うと簡単に読み込めます。


package main

import (
    "fmt"
    "os"
)

func main() {
    data, err := os.ReadFile("sample.txt")
    if err != nil {
        panic(err)
    }

    fmt.Println(string(data))
}

読み込んだデータはバイト配列という形式で取得されるため、stringに変換して表示します。

6. ファイルを開いて追記する方法

6. ファイルを開いて追記する方法
6. ファイルを開いて追記する方法

既存のファイルに内容を追加したい場合は、OpenFileを使います。


package main

import (
    "os"
)

func main() {
    file, _ := os.OpenFile("sample.txt", os.O_APPEND|os.O_WRONLY, 0644)
    defer file.Close()

    file.WriteString("追記の内容です\n")
}

O_APPENDは追記モード、O_WRONLYは書き込み専用を意味します。

ファイルの最後に追加される仕組みです。

7. ファイルを削除する方法

7. ファイルを削除する方法
7. ファイルを削除する方法

不要になったファイルはRemove関数で削除できます。


package main

import (
    "os"
)

func main() {
    os.Remove("sample.txt")
}

削除処理は簡単ですが、一度削除すると元に戻せないため注意が必要です。

8. エラー処理の重要性

8. エラー処理の重要性
8. エラー処理の重要性

ファイル操作ではエラー処理がとても重要です。例えば、存在しないファイルを開こうとするとエラーになります。

errという変数にエラー情報が入るので、必ず確認する習慣をつけましょう。

エラー処理をしないと、プログラムが途中で止まる原因になります。

9. ファイル操作の流れまとめ

9. ファイル操作の流れまとめ
9. ファイル操作の流れまとめ

Go言語のファイル操作は次の流れで覚えると理解しやすいです。

ファイルを作る、開く、書く、読む、閉じるという順番です。

これらの基本をしっかり理解することで、ログ保存やデータ管理など様々な応用に対応できます。

Go言語を基礎からスッキリ学びたい人や、 文法だけでなく「実用的な使い方」まで押さえたい人には、 定番の入門書がこちらです。

基礎からわかるGo言語をAmazonで見る

※ Amazon広告リンク

まとめ

まとめ
まとめ

Go言語のファイル操作は、プログラミングの基礎でありながら実務でも非常に重要な技術です。本記事では、osパッケージを中心に、ファイルの作成、書き込み、読み込み、追記、削除、そしてエラー処理までの基本的な流れを順番に学びました。これらの操作は一見すると単純に見えますが、ログ管理や設定ファイルの読み込み、データ保存処理など、実際の開発では欠かせない処理ばかりです。

特にGo言語では、シンプルで分かりやすい構文によってファイル操作を直感的に扱える点が特徴です。os.Createを使ったファイル作成、WriteStringによる文字列書き込み、os.ReadFileによる読み込み、そしてOpenFileを活用した追記処理など、それぞれの関数の役割を理解することで、より柔軟なプログラムが書けるようになります。

また、ファイル操作において重要なのがエラー処理です。Go言語ではエラーが明示的に返される設計になっているため、errを確認する習慣を身につけることが非常に重要です。これにより、プログラムの安全性や信頼性が大きく向上します。初心者の方ほど、このエラー処理を省略しがちですが、実務では必須のスキルとなります。

さらに、deferを使ったファイルクローズの処理も重要なポイントです。ファイルを開いたままにしてしまうと、メモリやリソースの無駄遣いにつながるため、必ず適切に閉じる必要があります。deferを使うことで、コードの可読性を保ちながら安全に処理を行うことができます。

Go言語のファイル操作を理解することで、テキストファイルの読み書きだけでなく、ログファイルの生成や設定ファイルの解析、データ処理など幅広い用途に応用できます。これからGo言語を学ぶ方は、今回紹介した基本操作をしっかり身につけることで、より実践的な開発にスムーズに進むことができます。

以下に、基本操作をまとめたサンプルプログラムを掲載します。実際に手を動かして確認することで、理解がより深まります。


package main

import (
    "fmt"
    "os"
)

func main() {
    file, err := os.Create("sample.txt")
    if err != nil {
        panic(err)
    }
    defer file.Close()

    file.WriteString("Go言語のファイル操作の確認\n")

    data, err := os.ReadFile("sample.txt")
    if err != nil {
        panic(err)
    }

    fmt.Println(string(data))

    file2, err := os.OpenFile("sample.txt", os.O_APPEND|os.O_WRONLY, 0644)
    if err != nil {
        panic(err)
    }
    defer file2.Close()

    file2.WriteString("追記のテストです\n")
}

このように一連の流れを通して実装することで、Go言語のファイル操作の全体像を理解することができます。基本を押さえた上で、より高度な入出力処理やバイナリファイル操作にも挑戦してみましょう。

先生と生徒の振り返り会話

生徒

Go言語のファイル操作について学んでみて、ファイルを作るところから読むところまで一通りできるようになりました。最初は難しそうに感じましたが、流れで覚えると理解しやすかったです。

先生

とても良い理解です。ファイル操作は流れで覚えることが重要です。作成、書き込み、読み込み、そして閉じる、この一連の流れを自然に書けるようになると実務でも役立ちます。

生徒

エラー処理が大事だというのも分かりました。今までは省略していましたが、しっかり書くようにします。

先生

その意識はとても大切です。Go言語ではエラー処理を丁寧に書くことで、安定したプログラムを作ることができます。今後はログ出力や設定ファイルの読み込みにも挑戦してみてください。

生徒

はい、今回学んだ内容を応用して、もっと実用的なプログラムを作ってみたいです。

先生

その調子です。基本を大切にしながら一歩ずつステップアップしていきましょう。

関連セミナーのご案内

【超入門】ゼロから始めるGo言語プログラミング:最速で「動くアプリ」を作るマンツーマン指導

「プログラミングの仕組み」が根本からわかる。Go言語でバックエンド開発の第一歩を。

本講座を受講することで、単なる文法の暗記ではなく、「プログラムがコンピュータの中でどう動いているか」という本質的な理解につながります。シンプルながら強力なGo言語(Golang)を通じて、現代のバックエンドエンジニアに求められる基礎体力を最短距離で身につけます。

具体的な開発内容と環境

【つくるもの】
ターミナル(黒い画面)上で動作する「対話型計算プログラム」や、データを整理して表示する「ミニ・ツール」をゼロから作成します。自分の書いたコードが形になる感動を体験してください。

【開発環境】
プロの現場でシェアNo.1のVisual Studio Code (VS Code)を使用します。インストールから日本語化、Go言語用の拡張機能設定まで、現場基準の環境を一緒に構築します。

この60分で得られる3つの理解

1. 環境構築の完全な理解

「なぜ動くのか」という設定の仕組みを理解し、今後の独学で詰まらない土台を作ります。

2. Go言語の基本構造(変数・型)

データの種類やメモリの概念など、他言語にも通じるプログラミングの本質を学びます。

3. 読みやすいコードの書き方

ただ動くだけでなく、誰が見ても分かりやすい「綺麗なコード」を書くための考え方を伝授します。

※本講座は、将来的にバックエンドエンジニアクラウドインフラに興味がある未経験者のためのエントリー講座です。マンツーマン形式により、あなたの理解度に合わせて進行します。

セミナー画像

初めてのGo言語を一緒に学びましょう!

カテゴリの一覧へ
新着記事
New1
Kotlin
Kotlinのクラスドキュメントコメントの書き方ガイド|初心者でもわかるKDocの基本と書き方
New2
Go言語
Go言語の関数設計パターン集!可読性と再利用性を高めよう
New3
Go言語
Go言語のインターフェースと抽象化の考え方を初心者向けに解説
New4
Kotlin
Kotlinのsorted・sortedByでコレクションをソートする方法【初心者向け完全ガイド】
人気記事
No.1
Java&Spring記事人気No1
Kotlin
Android Studioのインストール手順と初期設定を初心者向けに完全解説!
No.2
Java&Spring記事人気No2
Swift
Swift入門ガイド|基本構文と書き方をマスターしよう
No.3
Java&Spring記事人気No3
Swift
Swift Playgroundの使い方を完全解説!初心者に最適な学習環境の始め方
No.4
Java&Spring記事人気No4
Kotlin
Kotlinで画面遷移を実装しよう!初心者でもわかるIntentの使い方完全ガイド
No.5
Java&Spring記事人気No5
Go言語
Go言語のマルチステージビルド完全解説!Dockerで軽量なコンテナを作る方法
No.6
Java&Spring記事人気No6
Kotlin
Kotlinの可視性修飾子を完全ガイド!public・private・internalの意味と使い分けを初心者向けに解説
No.7
Java&Spring記事人気No7
Go言語
Go言語の構造体を使った設計パターン集(DTO・VOなど)
No.8
Java&Spring記事人気No8
Kotlin
Kotlinのインストール方法まとめ!Windows・Mac・Linux別にステップ解説