ファイル操作
CoddyのC#ジャーニー「ロジックとフロー」セクションの一部。レッスン 26/66。
C#では、System.IO名前空間のクラスを使ってファイルを操作できます。テキストファイルを扱う主なクラスは、StreamReader(読み込み用)とStreamWriter(書き込み用)です。
ファイルへの書き込み:
using System.IO;
// ファイルに書き込むためのStreamWriterを作成する
StreamWriter writer = new StreamWriter("myfile.txt");
// ファイルにテキストを書き込む
writer.WriteLine("Hello, World!");
writer.WriteLine("This is line 2");
// ファイルを閉じる
writer.Close();myfile.txtがまだ存在しない場合、StreamWriterが作成します。すでに存在する場合は、以前の内容が置き換えられます。
ファイルからの読み込み:
using System.IO;
// ファイルを読み込むためのStreamReaderを作成する
StreamReader reader = new StreamReader("myfile.txt");
// ファイルの内容をすべて読み込む
string content = reader.ReadToEnd();
Console.WriteLine(content);
// ファイルを閉じる
reader.Close();1行ずつ読み込む:
StreamReader reader = new StreamReader("myfile.txt");
// 1行目を読み込む
string line1 = reader.ReadLine();
Console.WriteLine(line1);
// 2行目を読み込む
string line2 = reader.ReadLine();
Console.WriteLine(line2);
reader.Close();ファイルを使い終わったら、必ず Close() で閉じることを忘れないでください!
チャレンジ
簡単ReadFileという名前のメソッドを作成します。このメソッドは次の処理を行います。
- 文字列パラメーターを1つ受け取ります:
filename StreamReaderを使ってファイルの内容を読み取ります- 内容をコンソールに出力します
- リーダーを閉じます
自分で試してみよう
using System;
using System.IO;
class Program
{
public static void ReadFile(string filename)
{
// ここにコードを書いてください
}
static void Main(string[] args)
{
string filename = Console.ReadLine();
ReadFile(filename);
}
}このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。
ロジックとフローのすべてのレッスン
自分で練習してみよう: C#オンラインコンパイラ