private void cbxTo_SelectedIndexChanged(object sender, EventArgs e) { export = GetExportInterface(cbxTo.Text); if (export.ExportConfigForm != null) { export.ExportConfigForm.ShowDialog(); } }
public WordLibraryStream(IWordLibraryImport import, IWordLibraryExport export, string path, Encoding encoding, StreamWriter sw) { this.import = import; this.export = export; this.sw = sw; this.path = path; this.encoding = encoding; }
private void cbxTo_SelectedIndexChanged(object sender, EventArgs e) { export = GetExportInterface(cbxTo.Text); Form form = new CoreWinFormMapping().GetExportForm(export); if (form != null) { form.ShowDialog(); } }
private void btnConvert_Click(object sender, EventArgs e) { richTextBox1.Clear(); ignoreWordLength = Convert.ToInt32(toolStripComboBoxIgnoreWordLength.Text); if (ignoreSingleWord) //过滤单个字 { minLength = 2; } if (ignoreLongWord) { maxLength = ignoreWordLength; } try { import = GetImportInterface(cbxFrom.Text); export = GetExportInterface(cbxTo.Text); if (import is SelfDefining) { ((SelfDefining)import).UserDefiningPattern = fromUserSetPattern; } if (export is SelfDefining) { ((SelfDefining)export).UserDefiningPattern = toUserSetPattern; } if (streamExport) { if (saveFileDialog1.ShowDialog() == DialogResult.OK) { exportPath = saveFileDialog1.FileName; } else { ShowStatusMessage("请选择词库保存的路径,否则将无法进行词库导出", true); return; } } mainBody.Import = import; mainBody.Export = export; mainBody.Filters = GetFilters(); timer1.Enabled = true; backgroundWorker1.RunWorkerAsync(); } catch (Exception ex) { MessageBox.Show(ex.Message); } }
public Form GetExportForm(IWordLibraryExport export) { if (imeFormMapping == null) { InitImportFormMapping(); } if (formPropertityMapping == null) { InitImportPropertityMapping(); } Type t = export.GetType(); if (imeFormMapping.ContainsKey(t)) { Form form = imeFormMapping[t]; ime = export; form.Closed += form_Closed; return(form); } return(null); }
private CommandType RunCommand(string command) { if (command == "-help" || command == "-?") { Help(); return CommandType.Help; } if (command.StartsWith("-i:")) { wordLibraryImport = GetImportInterface(command.Substring(3)); beginImportFile = true; return CommandType.Import; } if (command.StartsWith("-o:")) { wordLibraryExport = GetExportInterface(command.Substring(3)); beginImportFile = false; return CommandType.Export; } if (command.StartsWith("-c:")) //code { codingFile = command.Substring(3); UserCodingHelper.FilePath = codingFile; pattern.IsPinyinFormat = false; beginImportFile = false; return CommandType.Coding; } if (command.StartsWith("-ld2:")) //ld2 encoding { var ecodes = command.Substring(5); var arr = ecodes.Split(','); wordEncoding = Encoding.GetEncoding(arr[0]); if (arr.Length > 1) { xmlEncoding = Encoding.GetEncoding(arr[1]); } return CommandType.Encoding; } if (command.StartsWith("-f:")) //format { format = command.Substring(3); beginImportFile = false; var sort = new List<int>(); for (int i = 0; i < 3; i++) { char c = format[i]; sort.Add(Convert.ToInt32(c)); } pattern.Sort = sort; pattern.CodeSplitString = format[3].ToString(); pattern.SplitString = format[4].ToString(); string t = format[5].ToString().ToLower(); beginImportFile = false; if (t == "l") pattern.CodeSplitType = BuildType.LeftContain; if (t == "r") pattern.CodeSplitType = BuildType.RightContain; if (t == "b") pattern.CodeSplitType = BuildType.FullContain; if (t == "n") pattern.CodeSplitType = BuildType.None; pattern.ContainCode = (format[6].ToString().ToLower() == "y"); pattern.ContainRank = (format[8].ToString().ToLower() == "y"); return CommandType.Format; } if (beginImportFile) { importPaths.Add(command); } if (type == CommandType.Export) { exportPath = command; } return CommandType.Other; }
private void btnConvert_Click(object sender, EventArgs e) { richTextBox1.Clear(); try { import = GetImportInterface(cbxFrom.Text); export = GetExportInterface(cbxTo.Text); if (import is SelfDefining) { ((SelfDefining) import).UserDefiningPattern = fromUserSetPattern; } if (export is SelfDefining) { ((SelfDefining) export).UserDefiningPattern = toUserSetPattern; } if (import is IMultiCodeType) { ((IMultiCodeType) import).CodeType = fromCodeType; } if (export is IMultiCodeType) { ((IMultiCodeType) export).CodeType = toCodeType; } if (import is LingoesLd2) { ((LingoesLd2) import).WordEncoding = ld2WordEncoding; } if (streamExport) { if (saveFileDialog1.ShowDialog() == DialogResult.OK) exportPath = saveFileDialog1.FileName; else { ShowStatusMessage("请选择词库保存的路径,否则将无法进行词库导出", true); return; } } mainBody.Import = import; mainBody.Export = export; mainBody.Filters = GetFilters(); timer1.Enabled = true; backgroundWorker1.RunWorkerAsync(); } catch (Exception ex) { MessageBox.Show(ex.Message); } }
private CommandType RunCommand(string command) { if (command == "--help" || command == "-?") { showHelp(this.cbxImportItems); return(CommandType.Help); } if (command == "--version" || command == "-v") { Console.WriteLine("Version:" + Assembly.GetExecutingAssembly().GetName().Version); return(CommandType.Help); } if (command.StartsWith("-i:")) { wordLibraryImport = GetImportInterface(command.Substring(3)); beginImportFile = true; return(CommandType.Import); } if (command.StartsWith("-o:")) { wordLibraryExport = GetExportInterface(command.Substring(3)); beginImportFile = false; return(CommandType.Export); } if (command.StartsWith("-c:")) //code { codingFile = command.Substring(3); pattern.MappingTablePath = codingFile; pattern.IsPinyinFormat = false; beginImportFile = false; return(CommandType.Coding); } if (command.StartsWith("-ft:")) //filter { var filterStrs = command.Substring(4); Regex lenRegex = new Regex(@"len:(\d+)-(\d+)"); Regex rankRegex = new Regex(@"rank:(\d+)-(\d+)"); Regex rmRegex = new Regex(@"rm:(\w+)"); foreach (var filterStr in filterStrs.Split('|')) { if (lenRegex.IsMatch(filterStr)) { var match = lenRegex.Match(filterStr); var from = Convert.ToInt32(match.Groups[1].Value); var to = Convert.ToInt32(match.Groups[2].Value); var numberFilter = new LengthFilter() { MinLength = from, MaxLength = to }; this.filters.Add(numberFilter); } else if (rankRegex.IsMatch(filterStr)) { var match = rankRegex.Match(filterStr); var from = Convert.ToInt32(match.Groups[1].Value); var to = Convert.ToInt32(match.Groups[2].Value); var rFilter = new RankFilter() { MinLength = from, MaxLength = to }; this.filters.Add(rFilter); } else if (rmRegex.IsMatch(filterStr)) { var match = rmRegex.Match(filterStr); var rmType = match.Groups[1].Value; ISingleFilter filter; switch (rmType) { case "eng": filter = new EnglishFilter(); break; case "num": filter = new NumberFilter(); break; case "space": filter = new SpaceFilter(); break; case "pun": filter = new EnglishPunctuationFilter(); break; default: throw new ArgumentException("Unsupport filter type:" + rmType); } this.filters.Add(filter); } } return(CommandType.Coding); } if (command.StartsWith("-ct:")) //code type { var codeType = command.Substring(4).ToLower(); switch (codeType) { case "pinyin": pattern.CodeType = CodeType.Pinyin; break; case "wubi": pattern.CodeType = CodeType.Wubi; break; case "zhengma": pattern.CodeType = CodeType.Zhengma; break; case "cangjie": pattern.CodeType = CodeType.Cangjie; break; case "zhuyin": pattern.CodeType = CodeType.TerraPinyin; break; default: pattern.CodeType = CodeType.Pinyin; break; } return(CommandType.CodeType); } if (command.StartsWith("-r:")) //Rank { var rankType = command.Substring(3).ToLower(); switch (rankType) { case "baidu": this.wordRankGenerater = new BaiduWordRankGenerater(); break; case "google": this.wordRankGenerater = new GoogleWordRankGenerater(); break; default: { var rankNumber = Convert.ToInt32(rankType); var gen = new DefaultWordRankGenerater(); gen.ForceUse = true; gen.Rank = rankNumber; this.wordRankGenerater = gen; } break; } return(CommandType.CodeType); } if (command.StartsWith("-os:")) //code type { var os = command.Substring(4).ToLower(); switch (os) { case "windows": pattern.OS = OperationSystem.Windows; break; case "mac": case "macos": pattern.OS = OperationSystem.MacOS; break; case "linux": case "unix": pattern.OS = OperationSystem.Linux; break; default: pattern.OS = OperationSystem.Windows; break; } return(CommandType.OS); } if (command.StartsWith("-ld2:")) //ld2 encoding { string ecodes = command.Substring(5); string[] arr = ecodes.Split(','); wordEncoding = Encoding.GetEncoding(arr[0]); if (arr.Length > 1) { xmlEncoding = Encoding.GetEncoding(arr[1]); } return(CommandType.Encoding); } if (command.StartsWith("-f:")) //format { format = command.Substring(3); beginImportFile = false; var sort = new List <int>(); for (int i = 0; i < 3; i++) { char c = format[i]; sort.Add(Convert.ToInt32(c)); } pattern.Sort = sort; pattern.CodeSplitString = format[3].ToString(); pattern.SplitString = format[4].ToString(); string t = format[5].ToString().ToLower(); beginImportFile = false; if (t == "l") { pattern.CodeSplitType = BuildType.LeftContain; } if (t == "r") { pattern.CodeSplitType = BuildType.RightContain; } if (t == "b") { pattern.CodeSplitType = BuildType.FullContain; } if (t == "n") { pattern.CodeSplitType = BuildType.None; } pattern.ContainCode = (format[6].ToString().ToLower() == "y"); pattern.ContainRank = (format[8].ToString().ToLower() == "y"); return(CommandType.Format); } if (beginImportFile) { importPaths.AddRange(FileOperationHelper.GetFilesPath(command)); } if (type == CommandType.Export) { exportPath = command; } return(CommandType.Other); }
public Form GetExportForm(IWordLibraryExport export) { if (imeFormMapping == null) { InitImportFormMapping(); } if (formPropertityMapping == null) { InitImportPropertityMapping(); } Type t = export.GetType(); if (imeFormMapping.ContainsKey(t)) { Form form = imeFormMapping[t]; ime = export; form.Closed += form_Closed; return form; } return null; }
private void btnConvert_Click(object sender, EventArgs e) { richTextBox1.Clear(); ignoreWordLength = Convert.ToInt32(toolStripComboBoxIgnoreWordLength.Text); if (ignoreSingleWord) //过滤单个字 { minLength = 2; } if (ignoreLongWord) { maxLength = ignoreWordLength; } try { import = GetImportInterface(cbxFrom.Text); export = GetExportInterface(cbxTo.Text); if (import is SelfDefining) { ((SelfDefining) import).UserDefiningPattern = fromUserSetPattern; } if (export is SelfDefining) { ((SelfDefining) export).UserDefiningPattern = toUserSetPattern; } if (streamExport) { if (saveFileDialog1.ShowDialog() == DialogResult.OK) exportPath = saveFileDialog1.FileName; else { ShowStatusMessage("请选择词库保存的路径,否则将无法进行词库导出", true); return; } } mainBody.Import = import; mainBody.Export = export; mainBody.Filters = GetFilters(); timer1.Enabled = true; backgroundWorker1.RunWorkerAsync(); } catch (Exception ex) { MessageBox.Show(ex.Message); } }
private CommandType RunCommand(string command) { if (command == "-help" || command == "-?") { Help(); return(CommandType.Help); } if (command.StartsWith("-i:")) { wordLibraryImport = GetImportInterface(command.Substring(3)); beginImportFile = true; return(CommandType.Import); } if (command.StartsWith("-o:")) { wordLibraryExport = GetExportInterface(command.Substring(3)); beginImportFile = false; return(CommandType.Export); } if (command.StartsWith("-c:")) //code { codingFile = command.Substring(3); UserCodingHelper.FilePath = codingFile; pattern.Factory = new SelfDefiningCodeGenerater(); beginImportFile = false; return(CommandType.Coding); } if (command.StartsWith("-f:")) //format { format = command.Substring(3); beginImportFile = false; var sort = new List <int>(); for (int i = 0; i < 3; i++) { char c = format[i]; sort.Add(Convert.ToInt32(c)); } pattern.Sort = sort; pattern.PinyinSplitString = format[3].ToString(); pattern.SplitString = format[4].ToString(); string t = format[5].ToString().ToLower(); beginImportFile = false; if (t == "l") { pattern.PinyinSplitType = BuildType.LeftContain; } if (t == "r") { pattern.PinyinSplitType = BuildType.RightContain; } if (t == "b") { pattern.PinyinSplitType = BuildType.FullContain; } if (t == "n") { pattern.PinyinSplitType = BuildType.None; } pattern.ContainPinyin = (format[6].ToString().ToLower() == "y"); pattern.ContainCipin = (format[8].ToString().ToLower() == "y"); return(CommandType.Format); } if (beginImportFile) { importPaths.Add(command); } if (type == CommandType.Export) { exportPath = command; } return(CommandType.Other); }
private CommandType RunCommand(string command) { if (command == "--help" || command == "-?") { Help(); return(CommandType.Help); } if (command == "--version" || command == "-v") { Console.WriteLine("Version:" + Assembly.GetExecutingAssembly().GetName().Version); return(CommandType.Help); } if (command.StartsWith("-i:")) { wordLibraryImport = GetImportInterface(command.Substring(3)); beginImportFile = true; return(CommandType.Import); } if (command.StartsWith("-o:")) { wordLibraryExport = GetExportInterface(command.Substring(3)); beginImportFile = false; return(CommandType.Export); } if (command.StartsWith("-c:")) //code { codingFile = command.Substring(3); pattern.MappingTablePath = codingFile; pattern.IsPinyinFormat = false; beginImportFile = false; return(CommandType.Coding); } if (command.StartsWith("-ct:")) //code type { var codeType = command.Substring(4).ToLower(); switch (codeType) { case "pinyin": pattern.CodeType = CodeType.Pinyin; break; case "wubi": pattern.CodeType = CodeType.Wubi; break; case "zhengma": pattern.CodeType = CodeType.Zhengma; break; case "cangjie": pattern.CodeType = CodeType.Cangjie; break; case "zhuyin": pattern.CodeType = CodeType.TerraPinyin; break; default: pattern.CodeType = CodeType.Pinyin; break; } return(CommandType.CodeType); } if (command.StartsWith("-os:")) //code type { var os = command.Substring(4).ToLower(); switch (os) { case "windows": pattern.OS = OperationSystem.Windows; break; case "mac": case "macos": pattern.OS = OperationSystem.MacOS; break; case "linux": case "unix": pattern.OS = OperationSystem.Linux; break; default: pattern.OS = OperationSystem.Windows; break; } return(CommandType.OS); } if (command.StartsWith("-ld2:")) //ld2 encoding { string ecodes = command.Substring(5); string[] arr = ecodes.Split(','); wordEncoding = Encoding.GetEncoding(arr[0]); if (arr.Length > 1) { xmlEncoding = Encoding.GetEncoding(arr[1]); } return(CommandType.Encoding); } if (command.StartsWith("-f:")) //format { format = command.Substring(3); beginImportFile = false; var sort = new List <int>(); for (int i = 0; i < 3; i++) { char c = format[i]; sort.Add(Convert.ToInt32(c)); } pattern.Sort = sort; pattern.CodeSplitString = format[3].ToString(); pattern.SplitString = format[4].ToString(); string t = format[5].ToString().ToLower(); beginImportFile = false; if (t == "l") { pattern.CodeSplitType = BuildType.LeftContain; } if (t == "r") { pattern.CodeSplitType = BuildType.RightContain; } if (t == "b") { pattern.CodeSplitType = BuildType.FullContain; } if (t == "n") { pattern.CodeSplitType = BuildType.None; } pattern.ContainCode = (format[6].ToString().ToLower() == "y"); pattern.ContainRank = (format[8].ToString().ToLower() == "y"); return(CommandType.Format); } if (beginImportFile) { importPaths.AddRange(FileOperationHelper.GetFilesPath(command)); } if (type == CommandType.Export) { exportPath = command; } return(CommandType.Other); }
private CommandType RunCommand(string command) { if (command == "--help" || command == "-?") { Help(); return(CommandType.Help); } if (command == "--version" || command == "-v") { Console.WriteLine("Version:" + Assembly.GetExecutingAssembly().GetName().Version); return(CommandType.Help); } if (command.StartsWith("-i:")) { wordLibraryImport = GetImportInterface(command.Substring(3)); beginImportFile = true; return(CommandType.Import); } if (command.StartsWith("-o:")) { wordLibraryExport = GetExportInterface(command.Substring(3)); beginImportFile = false; return(CommandType.Export); } if (command.StartsWith("-c:")) //code { codingFile = command.Substring(3); pattern.MappingTablePath = codingFile; pattern.IsPinyinFormat = false; beginImportFile = false; return(CommandType.Coding); } if (command.StartsWith("-ld2:")) //ld2 encoding { string ecodes = command.Substring(5); string[] arr = ecodes.Split(','); wordEncoding = Encoding.GetEncoding(arr[0]); if (arr.Length > 1) { xmlEncoding = Encoding.GetEncoding(arr[1]); } return(CommandType.Encoding); } if (command.StartsWith("-f:")) //format { format = command.Substring(3); beginImportFile = false; var sort = new List <int>(); for (int i = 0; i < 3; i++) { char c = format[i]; sort.Add(Convert.ToInt32(c)); } pattern.Sort = sort; pattern.CodeSplitString = format[3].ToString(); pattern.SplitString = format[4].ToString(); string t = format[5].ToString().ToLower(); beginImportFile = false; if (t == "l") { pattern.CodeSplitType = BuildType.LeftContain; } if (t == "r") { pattern.CodeSplitType = BuildType.RightContain; } if (t == "b") { pattern.CodeSplitType = BuildType.FullContain; } if (t == "n") { pattern.CodeSplitType = BuildType.None; } pattern.ContainCode = (format[6].ToString().ToLower() == "y"); pattern.ContainRank = (format[8].ToString().ToLower() == "y"); return(CommandType.Format); } if (beginImportFile) { importPaths.AddRange(FileOperationHelper.GetFilesPath(command)); } if (type == CommandType.Export) { exportPath = command; } return(CommandType.Other); }