コード例 #1
0
 private void load_item()
 {
     if (Directory.Exists(recipe_fname_))
     {
         var item = new 料理情報();
         using (var sr = new StreamReader(recipe_fname_))
         {
             while ((item = 料理情報.ReadItem(sr)) != null)
             {
                 my_list.Add(item);
             }
         }
     }
 }
コード例 #2
0
        public static 料理情報 ReadItem(System.IO.StreamReader sr)
        {
            料理情報   r   = new 料理情報();
            string buf = sr.ReadLine();

            if (buf == null) // データファイル終端検出時はnullを返しておく
            {
                return(null);
            }

            // アイテム検索
            while ((buf = sr.ReadLine()) != null)
            {
                if (buf == null)
                {
                    throw new ArgumentException();
                }
                if (buf.StartsWith("[ITEM:"))
                {
                    break;
                }
            }

            // nameエントリ読み出し
            buf = sr.ReadLine(); // =name=読み捨て

            r.料理名  = read_entry(sr, "=time=");
            r.調理時間 = Convert.ToDecimal(read_entry(sr, "=cost="));
            r.費用   = Convert.ToDecimal(read_entry(sr, "=kcal="));
            r.kcal = Convert.ToDecimal(read_entry(sr, "=genre="));
            r.ジャンル = read_entry(sr, "=type=");
            r.形式   = read_entry(sr, "=difficulty=");
            r.難易度  = read_entry(sr, "=ingredients=");
            r.材料   = read_multiline_entry(sr, "=season=");
            r.シーズン = read_multiline_entry(sr, "<recipe>");
            r.レシピ  = read_multiline_entry(sr, "<kitchenware>");
            r.調理器具 = read_multiline_entry(sr, "<EOI>");

            return(r);
        }
コード例 #3
0
 private void 料理登録ボタン_Click(object sender, EventArgs e)
 {
     using (var sw = new StreamWriter(recipe_fname_,
                                      true,
                                      Encoding.GetEncoding("Shift_JIS")))
     {
         var item = new 料理情報();
         item.料理名  = 料理名ボックス.Text;
         item.レシピ  = レシピボックス.Text;
         item.材料   = 材料ボックス.Text;
         item.ジャンル = 料理ジャンルボックス.Text;
         item.形式   = ジャンルボックス.Text;
         item.シーズン = 旬ボックス.Text;
         item.調理器具 = 調理器具ボックス.Text;
         item.調理時間 = 調理時間ボックス.Value;
         item.費用   = 費用ボックス.Value;
         item.kcal = kcalボックス.Value;
         item.難易度  = 難易度ボックス.Text;
         my_list.Add(item);
         item.ItemNo = my_list.Count;
         item.WriteItem(sw);
     }
 }