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 コメント:
コメントを投稿