Ejemplo n.º 1
0
        /// <summary>
        /// 成績を書き出すぜ☆(^▽^)
        /// </summary>
        public static void Flush_Seiseki_1file(Seiseki se, string file, StringBuilder syuturyoku)
        {
            if (!File.Exists(file))
            {
                // 定跡ファイルが無ければ作成します。
                FileStream fs = File.Create(file);
                fs.Close(); // File.Create したあとは、必ず Close() しないと、ロックがかかったままになる☆(^▽^)
            }

            syuturyoku.Append(".");
            {
                var msg = syuturyoku.ToString();
                syuturyoku.Clear();
                Logger.Flush(msg);
            }

            // 成績の文字列化☆
            string seisekiStr = se.ToContents_NotUnity(Option_Application.Optionlist.USI);

            syuturyoku.Append(".");
            {
                var msg = syuturyoku.ToString();
                syuturyoku.Clear();
                Logger.Flush(msg);
            }

            // 容量を制限するぜ☆
            if (Seiseki.Capacity < seisekiStr.Length)
            {
                syuturyoku.AppendLine($"seiseki removed bytes = { se.DownSizeing(seisekiStr.Length - Seiseki.Capacity)}");

                syuturyoku.Append(".");
                {
                    var msg = syuturyoku.ToString();
                    syuturyoku.Clear();
                    Logger.Flush(msg);
                }

                // もう1回取得☆
                seisekiStr = se.ToContents_NotUnity(Option_Application.Optionlist.USI);
            }

            // 上書き☆
            System.IO.File.WriteAllText(file, seisekiStr);
        }