public void Run(bool ci_run) { ci = ci_run; if (ci) { Console.WriteLine("Updating Filelist on CI... ..."); } else { Console.WriteLine("Updating Filelist... ..."); } list.Clear(); AddDir(Config.workPath); //当前目录所有文件 //版本 MyUtil.saveText(Config.versionFile, DateTime.Now.ToString()); //重命名列表 MyUtil.saveText(Config.renameFile, "# Rename List (Codepage is UTF-8, please use TAB to seperate entries, Use Relative Address.)" + Environment.NewLine + "# An example of renaming a file from 123456.jpg to 456789.jpg" + Environment.NewLine + "# pics/123456.jpg pics/456789.jpg"); //删除列表 MyUtil.saveText(Config.deleteFile, "# Delete List (Codepage is UTF-8, please use TAB to seperate entries, Use Relative Address.)"); //文件列表 MyUtil.saveList(Config.filelistFile, list.ToArray()); //文件列表 Console.WriteLine("Filelist Updated!!"); }
void Update(bool ignore_sound) { if (!File.Exists(Config.errorFile)) //上一次下载是否失败 { Console.WriteLine("Downloading Filelist... ..."); if (!MyHttp.DownLoad(Config.url_filelist, Config.filelistFile)) { return; } Console.WriteLine("Starting Update... ..."); } else { File.Delete(Config.filelistFile); File.Move(Config.errorFile, Config.filelistFile); Console.WriteLine("Continuing Update... ..."); } if (ignore_sound) { Console.WriteLine("The sound files will be ignored."); } string[] lines = File.ReadAllLines(Config.filelistFile, Encoding.UTF8); all_num = lines.Length; num = 0; showProcess(num++, all_num); foreach (string line in lines) { if (!line.StartsWith("#")) { string[] words = line.Split('\t'); if (words.Length >= 2) { Download(words[0], words[1], false, ignore_sound); } } } while (!MyHttp.isOK()) { } if (errorlist.Count > 0) { Console.WriteLine("Some of files failed to update... ..."); MyUtil.saveList(Config.errorFile, errorlist.ToArray()); } }