KotlinでCSVファイルを読み書きする方法を完全解説!初心者向けCSVファイル操作と入出力(I/O)ガイド
生徒
「KotlinでCSVファイルを読み込んだり保存したりすることはできますか?」
先生
「もちろんできます。Kotlinではファイル操作の機能が標準で用意されていて、CSVファイルの読み込みや書き込みを簡単に実装できます。」
生徒
「CSVファイルってそもそも何ですか?」
先生
「CSVはカンマで区切られたデータ形式のファイルです。Excelやデータベースのデータ保存、ログ保存などでよく使われます。」
生徒
「KotlinでもデータをCSVファイルに保存できるんですね。」
先生
「そうです。それではKotlinでCSVファイルを読み書きする基本的な方法を順番に見ていきましょう。」
1. CSVファイルとは何か
CSVとは「Comma Separated Values」の略で、日本語では「カンマ区切りのデータ」という意味になります。CSVファイルは、データをカンマで区切って保存するシンプルなテキスト形式のファイルです。
例えば、次のような内容がCSVファイルのデータです。
名前,年齢,職業
田中,25,エンジニア
佐藤,30,デザイナー
このように、横に並んだデータをカンマで区切ることで表のようなデータを保存できます。
CSVファイルは次のような用途でよく使われます。
- Excelのデータ保存
- データ分析の入力データ
- システム間のデータ連携
- ログファイルの保存
Kotlinでは標準のファイル入出力機能を使うことで、CSVファイルを簡単に読み込んだり書き込んだりできます。
2. Kotlinのファイル操作と入出力(I/O)とは
Kotlinでは、ファイルの読み込みや書き込みのことを「入出力」と呼びます。英語ではInput Outputといい、略してI/Oと書きます。
Inputは入力、つまりファイルを読み込むことです。Outputは出力、つまりファイルへ書き込むことです。
例えば次のような操作はすべてファイル入出力です。
- CSVファイルを読み込む
- CSVファイルを作成する
- CSVファイルにデータを書き込む
- CSVファイルを1行ずつ読み込む
KotlinではJavaのFileクラスを使ってファイル操作を行うことが多く、CSVファイルの処理も同じ方法で行えます。
3. KotlinでCSVファイルを書き込む基本方法
まずはKotlinでCSVファイルを作成してデータを書き込む基本的な方法を見てみましょう。
ここでは、簡単なCSVファイルを作ってデータを書き込みます。
import java.io.File
fun main() {
val file = File("data.csv")
file.writeText("名前,年齢,職業\n")
file.appendText("田中,25,エンジニア\n")
file.appendText("佐藤,30,デザイナー\n")
println("CSVファイルを書き込みました")
}
このプログラムでは次の処理を行っています。
- CSVファイルを作成
- 1行目にヘッダーを書き込み
- データを追加
writeTextはファイルを書き込み、appendTextはデータを追記するメソッドです。メソッドとは、特定の処理を行うためのプログラムの部品のようなものです。
4. KotlinでCSVファイルを読み込む方法
次にCSVファイルを読み込む方法を解説します。
KotlinではreadTextを使うことでファイルの内容を簡単に読み込むことができます。
import java.io.File
fun main() {
val file = File("data.csv")
val content = file.readText()
println(content)
}
このコードではCSVファイルの内容をすべて読み込み、コンソールへ表示しています。
名前,年齢,職業
田中,25,エンジニア
佐藤,30,デザイナー
readTextはファイル全体を一度に読み込むため、小さなCSVファイルには便利ですが、大きなデータの場合は1行ずつ読み込む方法がよく使われます。
5. CSVファイルを1行ずつ読み込む方法
CSVファイルが大きくなると、すべてを一度に読み込むとメモリを多く使う可能性があります。そのため実際のシステムでは1行ずつ読み込む方法がよく使われます。
KotlinではforEachLineを使うと簡単に実装できます。
import java.io.File
fun main() {
val file = File("data.csv")
file.forEachLine {
println(it)
}
}
このプログラムではCSVファイルを1行ずつ読み込み、その行を表示しています。
itというのは現在読み込んでいる行のデータを表す変数です。変数とはデータを一時的に保存する箱のようなものです。
6. CSVデータをカンマで分割して扱う方法
CSVファイルのデータを扱うときは、カンマで分割してデータを取り出すことがよくあります。
Kotlinではsplit関数を使うと簡単に分割できます。
import java.io.File
fun main() {
val file = File("data.csv")
file.forEachLine {
val data = it.split(",")
println("名前: " + data[0])
println("年齢: " + data[1])
println("職業: " + data[2])
println("-----")
}
}
splitは文字列を指定した文字で区切る関数です。この場合はカンマで区切っているため、CSVの各データを個別に取り出すことができます。
配列の番号は0から始まります。つまり最初のデータは0番目になります。
7. KotlinでリストデータをCSVファイルへ保存する
プログラムで扱っているデータをCSVとして保存するケースも多くあります。ここではKotlinのリストデータをCSVとして保存する例を紹介します。
import java.io.File
fun main() {
val users = listOf(
"田中,25,エンジニア",
"佐藤,30,デザイナー",
"鈴木,28,プログラマー"
)
val file = File("users.csv")
file.writeText("名前,年齢,職業\n")
users.forEach {
file.appendText(it + "\n")
}
println("CSVファイルを作成しました")
}
このプログラムでは、リストというデータの集合を使っています。リストとは複数のデータをまとめて管理するためのデータ構造です。
このようにして、アプリケーションのデータをCSVとして保存することで、Excelやデータ分析ツールと連携することができます。
まとめ
(振り返りのまとめ)
KotlinでCSVファイルを読み書きする方法を完全解説!初心者向けCSVファイル操作と入出力(I/O)ガイド
生徒
「KotlinでCSVファイルを読み込んだり保存したりすることはできますか?」
先生
「もちろんできます。Kotlinではファイル操作の機能が標準で用意されていて、CSVファイルの読み込みや書き込みを簡単に実装できます。」
生徒
「CSVファイルってそもそも何ですか?」
先生
「CSVはカンマで区切られたデータ形式のファイルです。Excelやデータベースのデータ保存、ログ保存などでよく使われます。」
生徒
「KotlinでもデータをCSVファイルに保存できるんですね。」
先生
「そうです。それではKotlinでCSVファイルを読み書きする基本的な方法を順番に見ていきましょう。」
1. CSVファイルとは何か
CSVとは「Comma Separated Values」の略で、日本語では「カンマ区切りのデータ」という意味になります。CSVファイルは、データをカンマで区切って保存するシンプルなテキスト形式のファイルです。
例えば、次のような内容がCSVファイルのデータです。
名前,年齢,職業
田中,25,エンジニア
佐藤,30,デザイナー
このように、横に並んだデータをカンマで区切ることで表のようなデータを保存できます。
CSVファイルは次のような用途でよく使われます。
- Excelのデータ保存
- データ分析の入力データ
- システム間のデータ連携
- ログファイルの保存
Kotlinでは標準のファイル入出力機能を使うことで、CSVファイルを簡単に読み込んだり書き込んだりできます。
2. Kotlinのファイル操作と入出力(I/O)とは
Kotlinでは、ファイルの読み込みや書き込みのことを「入出力」と呼びます。英語ではInput Outputといい、略してI/Oと書きます。
Inputは入力、つまりファイルを読み込むことです。Outputは出力、つまりファイルへ書き込むことです。
例えば次のような操作はすべてファイル入出力です。
- CSVファイルを読み込む
- CSVファイルを作成する
- CSVファイルにデータを書き込む
- CSVファイルを1行ずつ読み込む
KotlinではJavaのFileクラスを使ってファイル操作を行うことが多く、CSVファイルの処理も同じ方法で行えます。
3. KotlinでCSVファイルを書き込む基本方法
まずはKotlinでCSVファイルを作成してデータを書き込む基本的な方法を見てみましょう。
ここでは、簡単なCSVファイルを作ってデータを書き込みます。
import java.io.File
fun main() {
val file = File("data.csv")
file.writeText("名前,年齢,職業\n")
file.appendText("田中,25,エンジニア\n")
file.appendText("佐藤,30,デザイナー\n")
println("CSVファイルを書き込みました")
}
このプログラムでは次の処理を行っています。
- CSVファイルを作成
- 1行目にヘッダーを書き込み
- データを追加
writeTextはファイルを書き込み、appendTextはデータを追記するメソッドです。メソッドとは、特定の処理を行うためのプログラムの部品のようなものです。
4. KotlinでCSVファイルを読み込む方法
次にCSVファイルを読み込む方法を解説します。
KotlinではreadTextを使うことでファイルの内容を簡単に読み込むことができます。
import java.io.File
fun main() {
val file = File("data.csv")
val content = file.readText()
println(content)
}
このコードではCSVファイルの内容をすべて読み込み、コンソールへ表示しています。
名前,年齢,職業
田中,25,エンジニア
佐藤,30,デザイナー
readTextはファイル全体を一度に読み込むため、小さなCSVファイルには便利ですが、大きなデータの場合は1行ずつ読み込む方法がよく使われます。
5. CSVファイルを1行ずつ読み込む方法
CSVファイルが大きくなると、すべてを一度に読み込むとメモリを多く使う可能性があります。そのため実際のシステムでは1行ずつ読み込む方法がよく使われます。
KotlinではforEachLineを使うと簡単に実装できます。
import java.io.File
fun main() {
val file = File("data.csv")
file.forEachLine {
println(it)
}
}
このプログラムではCSVファイルを1行ずつ読み込み、その行を表示しています。
itというのは現在読み込んでいる行のデータを表す変数です。変数とはデータを一時的に保存する箱のようなものです。
6. CSVデータをカンマで分割して扱う方法
CSVファイルのデータを扱うときは、カンマで分割してデータを取り出すことがよくあります。
Kotlinではsplit関数を使うと簡単に分割できます。
import java.io.File
fun main() {
val file = File("data.csv")
file.forEachLine {
val data = it.split(",")
println("名前: " + data[0])
println("年齢: " + data[1])
println("職業: " + data[2])
println("-----")
}
}
splitは文字列を指定した文字で区切る関数です。この場合はカンマで区切っているため、CSVの各データを個別に取り出すことができます。
配列の番号は0から始まります。つまり最初のデータは0番目になります。
Kotlinを基礎からしっかり学びたい人や、 Java経験を活かしてモダンな言語にステップアップしたい人には、 定番の入門書がこちらです。
基礎からわかるKotlinをAmazonで見る※ Amazon広告リンク
7. KotlinでリストデータをCSVファイルへ保存する
プログラムで扱っているデータをCSVとして保存するケースも多くあります。ここではKotlinのリストデータをCSVとして保存する例を紹介します。
import java.io.File
fun main() {
val users = listOf(
"田中,25,エンジニア",
"佐藤,30,デザイナー",
"鈴木,28,プログラマー"
)
val file = File("users.csv")
file.writeText("名前,年齢,職業\n")
users.forEach {
file.appendText(it + "\n")
}
println("CSVファイルを作成しました")
}
このプログラムでは、リストというデータの集合を使っています。リストとは複数のデータをまとめて管理するためのデータ構造です。
このようにして、アプリケーションのデータをCSVとして保存することで、Excelやデータ分析ツールと連携することができます。
【未経験OK】Kotlinで始めるプログラミング入門|ゼロから「動く喜び」を体験する60分
「プログラミングを始めたい」を形にする。最新言語Kotlinで楽しむ、ものづくりの第一歩。
本講座は、プログラミング経験が全くない方のためのエントリー講座です。「コードを書くってどういうこと?」という基本から、世界中で使われている最新言語Kotlin(コトリン)を使って、実際にプログラムを動かすまでを体験します。難しい理屈よりも、まずは「自分の手で動かす楽しさ」を最短距離で実感していただきます。
具体的な体験内容と環境
【つくるもの】
簡単な言葉を入力すると自動で返答してくれる「対話型ミニプログラム」や、計算を自動化する「便利ツール」をゼロから作成します。黒い画面に自分の書いた文字が表示される瞬間は、最高の感動体験です。
【開発環境】
プロのエンジニアが実際に使っている開発ツールIntelliJ IDEA(インテリジェイ)をインストールします。ボタン一つで日本語化し、初心者でも迷わず操作できる「魔法の設定」を一緒に行います。
この60分で得られる3つの体験
プロと同じ道具を揃えることで、明日から一人でもプログラミングを続けられる環境が整います。
「変数」や「型」といった難しい言葉も、身近な例え話で解説。モヤモヤをゼロにします。
Kotlinは英語に近くて読みやすいのが特徴。自分でコードを読んで、間違いを見つけるコツも伝授します。
※本講座は、パソコン操作が不安な方でも安心して受講いただける完全マンツーマンです。あなたのペースに合わせて、一つずつ丁寧に進めていきます。
Kotlinで始めるプログラミング入門|ゼロから「動く喜び」を体験