using System;
using System.IO;
class MainClass
{
// ファイルに書き込む(末尾に追加する)Methodを定義
static void write1(string text)
{
try
{
// StreamWriter Classをインスタンス化
using (var writer
= new StreamWriter(text,true,
System.Text.Encoding.Default))
{
/* StreamWriter ClassのWriteLine
* Methodで1行ずつtextに書き込む */
writer.WriteLine("1行目");
writer.WriteLine("2行目");
writer.WriteLine("3行目");
}
}
catch (Exception error)
{
// 例外の原因の詳細情報を表示
Console.WriteLine(error.Message);
}
}
// ファイルに書き込む(上書き)
static void write2(string text)
{
try
{
using (var writer =
new StreamWriter(text, false,
System.Text.Encoding.Default))
{
writer.WriteLine("1:1行目");
writer.WriteLine("2:2行目");
writer.WriteLine("3:3行目");
}
}
catch (Exception error)
{
Console.WriteLine(error.Message);
}
}
// ファイルを1行ずつ読み込むMethodを定義
static void read(string text)
{
try
{
// StreamReader Classをインスタンス化
using (var reader
= new StreamReader(text,
System.Text.Encoding.Default))
{
// string型のlineを宣言
string line;
/* textがnullの行までtextを1行ずつline
* に読み込み表示 */
while ((line = reader.ReadLine()) != null)
{
Console.WriteLine(line);
}
}
}
catch (Exception error)
{
// 例外の原因の詳細情報を表示
Console.WriteLine(error.Message);
}
}
static void Main()
{
try
{
// Sample.txtという名前のstring型のtextを定義
string text = "Sample.txt";
// write Methodの呼び出し
write1(text);
/* read Methodの呼び出し
* 出力値
* 1行目
* 2行目
* 3行目 */
read(text);
/* 同様の処理をもう1度行いtrueの場合
* 末尾に新たな行が書き込まれることを確認 */
Console.WriteLine("末尾に追加");
write1(text);
/* 出力値
* 1行目
* 2行目
* 3行目
* 1行目
* 2行目
* 3行目 */
read(text);
// 上書き
Console.WriteLine("上書き");
write2(text);
/* 出力値
* 1:1行目
* 2:2行目
* 3:3行目 */
read(text);
}
catch (Exception error)
{
// 例外の原因の詳細情報を表示
Console.WriteLine(error.Message);
}
finally
{
// 出力値:終了
Console.WriteLine("終了");
}
}
}
0 コメント:
コメントを投稿