Пример #1
0
        //chara[0] = charaData;
        /*
         * charaData[x]+=loadData(Abl,x)
         * or
         *
         * for i=0,i<99;i++
         * ReadLineで一列ずつ読む
         * token[0][1][2]   ->  [能力,親密,1 or ABL,0,1]
         *  switch token[0]
         *      case "TALENT":
         *      case "素質":
         *          a=token[1]
         *          if ToInt(a) != -1 ?
         *             talent[a]=token[2]
         *          else
         *             a=ToIntTalent(a)
         *             talent[a]=token[2]
         *
         * token[2]->
         *
         */
        //variablsesize.csvを読み込む
        private void loadVariableSizeData(string csvpath)
        {
            //ファイルが無い場合、デフォルト値を設定
            if (!File.Exists(csvpath))
                return;

            EraStreamReader eReader = new EraStreamReader();
            if (!eReader.Open(csvpath))
            {
                return;
            }
            try
            {
                StringStream st = null;
                while ((st = eReader.ReadEnabledLine()) != null)
                {
                    //position=scriptposition
                    //changeVariableSizeData
                }
            }
            catch
            {
                System.Media.SystemSounds.Hand.Play();
                return;
                //予期しないエラーが発生しました
            }
            finally
            {
                eReader.Close();
            }
            /*
             * isOpen
             *
             * while readline
             *
             * サイズ調整
             */

            /*
             * chara型配列を宣言  Chara[]
             * chara.toCharacterData(Chara chara, string tokens[])
             */
        }
Пример #2
0
 //
 private void loadDataTo(string csvPath, int targetIndex, Int64[] targetI)
 {
     if (!File.Exists(csvPath))
         return;
     //配列のサイズを宣言
     string[] target = names[targetIndex];
     EraStreamReader eReader = new EraStreamReader();
     if (!eReader.Open(csvPath))
     {
      				//オープンに失敗しました
     }
     try
     {
         StringStream st = null;
         while ((st = eReader.ReadEnabledLine()) != null)
         {
             string[] tokens = st.Substring().Split(',');
             if (tokens.Length < 2)
             {
                 //,が必要です
                 continue;
             }
             int index = 0;
             if (!Int32.TryParse(tokens[0], out index))
             {
                 //一つ目の値を整数値に変換できません
                 continue;
             }
             if ((index < 0) || (target.Length <= index))
             {
                 //配列の範囲外です
                 continue;
             }
             target[index] = tokens[1];
         }
     }
     catch
     {
         System.Media.SystemSounds.Hand.Play();
         //予期しないエラーが発生しました
     }
     finally
     {
         eReader.Close();
     }
 }