2014年6月18日水曜日

開発環境

Head First C#―頭とからだで覚えるC#の基本 (Andrew Stellman (著)、Jennifer Green (著)、佐藤 嘉一 (監修)、木下 哲也 (翻訳)、オライリージャパン)の7章(ファイルの読み書き: バイト配列を保存し、世界を救う)、プールパズル(p.289)を解いてみる。

プールパズル(p.289)

コード

Program1.cs

using System;
using System.Windows.Forms;
using System.IO;

namespace WindowsFormsApplication1
{
    static class Pineapple
    {
        const string d = "delivery.txt";
        public enum Fargo { 北, 南, 東, 西, フラミンゴ, }

        static void Main()
        {
            StreamWriter o = new StreamWriter(@"C:\Users\m\Desktop\order.txt");
            Pizza pz = new Pizza(new StreamWriter(d, true));

            pz.Idaho(Fargo.フラミンゴ);
            for (int w = 3; w >= 0; --w)
            {
                Pizza i = new Pizza(new StreamWriter(d, false));
                i.Idaho((Fargo)w);
                Party p = new Party(new StreamReader(d));
                p.HowMuch(o);
            }
            o.WriteLine("以上です。");
            o.Close();
        }
    }
    class Pizza
    {
        private StreamWriter writer;

        public Pizza(StreamWriter writer)
        {
            this.writer = writer;
        }

        public void Idaho(Pineapple.Fargo f)
        {
            writer.WriteLine(f.ToString());
            writer.Close();
        }
    }
    class Party
    {
        private StreamReader reader;

        public Party(StreamReader reader)
        {
            this.reader = reader;
        }

        public void HowMuch(StreamWriter q)
        {
            q.WriteLine(reader.ReadLine());
            reader.Close();
        }
    }
}

出力

order.txt

西
東
南
北
以上です。

0 コメント:

コメントを投稿