示例#1
0
        //音声タイプの名前に変換
        //例:Indexが2で既にそのタイプのファイル数が3個ある場合 -> danyaku_04.mp3
        public static string Set_Voice_Type_Change_Name_By_Index(string Dir, List <List <string> > Lists)
        {
            int Romaji_Number = 0;

            foreach (List <string> Index in Lists)
            {
                int File_Number = 1;
                foreach (string File_Path in Index)
                {
                    try
                    {
                        if (File_Number < 10)
                        {
                            File.Copy(File_Path, Dir + "/" + Voice_Set.Get_Voice_Type_Romaji_Name(Romaji_Number) + "_0" + File_Number + Path.GetExtension(File_Path), true);
                        }
                        else
                        {
                            File.Copy(File_Path, Dir + "/" + Voice_Set.Get_Voice_Type_Romaji_Name(Romaji_Number) + "_" + File_Number + Path.GetExtension(File_Path), true);
                        }
                        File_Number++;
                    }
                    catch (Exception e)
                    {
                        Error_Log_Write(e.Message);
                        return("ファイルをコピーできませんでした。");
                    }
                }
                Romaji_Number++;
            }
            return("");
        }
示例#2
0
        //音声タイプとそのタイプのファイル数を取得
        //引数:取得するフォルダ,ref 音声タイプを入れるリスト,ref 音声数を入れるリスト   (リストは初期化される)
        public static void Get_Voice_Type_And_Index(string Dir_Path, ref List <string> Voice_Type, ref List <int> Voice_Number)
        {
            string[]      Dir_List        = Directory.GetFiles(Dir_Path, "*", SearchOption.TopDirectoryOnly);
            List <string> Voice_List_Type = new List <string>();

            for (int Number = 0; Number <= Dir_List.Length - 1; Number++)
            {
                if (Voice_Set.Voice_Name_Hide(Dir_List[Number]))
                {
                    Voice_List_Type.Add(Path.GetFileName(Dir_List[Number]));
                }
            }
            List <string> Voice_Type_Ref        = new List <string>();
            List <int>    Voice_Type_Number_Ref = new List <int>();
            int           Voice_Type_Number     = 0;
            string        Name_Now = "";

            for (int Number = 0; Number < Voice_List_Type.Count; Number++)
            {
                string Name_Only = Voice_List_Type[Number].Substring(0, Voice_List_Type[Number].LastIndexOf('_'));
                if (Name_Now != Name_Only)
                {
                    if (Name_Now != "")
                    {
                        Voice_Type_Number_Ref.Add(Voice_Type_Number);
                    }
                    Name_Now          = Name_Only;
                    Voice_Type_Number = 1;
                    Voice_Type_Ref.Add(Voice_Set.Get_Voice_Type_Japanese_Name(Name_Only));
                }
                else
                {
                    Voice_Type_Number++;
                }
            }
            Voice_Type_Number_Ref.Add(Voice_Type_Number);
            Voice_Type   = Voice_Type_Ref;
            Voice_Number = Voice_Type_Number_Ref;
        }
示例#3
0
 //管理者が設定を変更した場合それを反映
 void TCP_Change_Config(string[] Message_Temp)
 {
     try
     {
         string Server_Rename = Message_Temp[2].Replace("\0", "");
         if (Voice_Set.SRTTbacon_Server_Name != Server_Rename)
         {
             Directory.Move(Voice_Set.Special_Path + "/Server/" + Voice_Set.SRTTbacon_Server_Name, Voice_Set.Special_Path + "/Server/" + Server_Rename);
             Voice_Set.SRTTbacon_Server_Name = Server_Rename;
         }
         if (Voice_Set.FTPClient.File_Exist("/WoTB_Voice_Mod/" + Voice_Set.SRTTbacon_Server_Name + "/Remove_Files.dat"))
         {
             StreamReader str  = Voice_Set.FTPClient.GetFileRead("/WoTB_Voice_Mod/" + Voice_Set.SRTTbacon_Server_Name + "/Remove_Files.dat");
             string[]     Read = str.ReadToEnd().Split('\n');
             str.Dispose();
             foreach (string Line in Read)
             {
                 if (Line != "")
                 {
                     try
                     {
                         File.Delete(Voice_Set.Special_Path + "/Server/" + Voice_Set.SRTTbacon_Server_Name + "/Voices/" + Line);
                     }
                     catch
                     {
                     }
                 }
             }
         }
         if (Voice_Set.FTPClient.File_Exist("/WoTB_Voice_Mod/" + Voice_Set.SRTTbacon_Server_Name + "/Add_Files.dat"))
         {
             bool         IsChanged = false;
             StreamReader str       = Voice_Set.FTPClient.GetFileRead("/WoTB_Voice_Mod/" + Voice_Set.SRTTbacon_Server_Name + "/Add_Files.dat");
             string[]     Read      = str.ReadToEnd().Split('\n');
             str.Dispose();
             foreach (string Line in Read)
             {
                 if (Line != "")
                 {
                     try
                     {
                         Voice_Set.FTPClient.DownloadFile("/WoTB_Voice_Mod/" + Voice_Set.SRTTbacon_Server_Name + "/Voices/" + Line, Voice_Set.Special_Path + "/Server/" + Voice_Set.SRTTbacon_Server_Name + "/Voices/" + Line);
                         IsChanged = true;
                     }
                     catch
                     {
                     }
                 }
             }
             if (IsChanged)
             {
                 string[]      Temp    = Directory.GetFiles(Voice_Set.Special_Path + "/Server/" + Voice_Set.SRTTbacon_Server_Name + "/Voices");
                 List <string> Temp_01 = new List <string>();
                 for (int Number = 0; Number <= Temp.Length - 1; Number++)
                 {
                     if (!Voice_Set.Voice_Name_Hide(Temp[Number]))
                     {
                         Temp_01.Add(System.IO.Path.GetFileName(Temp[Number]));
                     }
                 }
                 Voice_Set.Voice_Files = Temp_01;
             }
         }
     }
     catch (Exception e)
     {
         MessageBox.Show("エラー:" + e.Message);
         Sub_Code.Error_Log_Write(e.Message);
     }
 }