private void Open_Click(object sender, RoutedEventArgs e) { OpenFileDialog dlg = new OpenFileDialog(); dlg.Filter = "Mediendateien(*.avi, *.mpg)|*.avi;*.mpg;*.wmv|Alle Dateien|*.*"; dlg.Multiselect = true; if (dlg.ShowDialog().Value == true) { if (dlg.FileNames.Count() == 0) { return; } foreach (string filename in dlg.FileNames) { _FileInfo NewFile = new _FileInfo { FullName = filename }; _fileList.Items.Add(NewFile); b = false; _SelectedFilePath = NewFile.FullName; this.Title = NewFile.ToString(); } Func(); b = true; } }
public async Task WriteAllTextAsync(string path, string text) => await Task.Run(() => { var dirPath = Path.GetDirectoryName(path) ?? ""; var fileName = Path.GetFileName(path) ?? ""; var dir = FindDir(dirPath); lock (dir) { if (dir.Files.ContainsKey(fileName)) { var fileInfo = dir.Files[fileName]; lock (fileInfo) { fileInfo.Content = text; fileInfo.LastWriteTimeUtc = TimeStampSource.GetTimeStamp(); } } else { var timeStamp = TimeStampSource.GetTimeStamp(); var fileInfo = new _FileInfo { Path = path, CreationTimeUtc = timeStamp, LastWriteTimeUtc = timeStamp, Content = text }; dir.Files[fileName] = fileInfo; } } });
private void _fileList_SelectionChanged(object sender, SelectionChangedEventArgs e) { if (b) { _FileInfo NewFile = _fileList.SelectedValue as _FileInfo; _SelectedFilePath = NewFile.FullName; Func(); this.Title = NewFile.ToString(); } }
private void Window_Drop(object sender, DragEventArgs e) { string[] files = e.Data.GetData(DataFormats.FileDrop) as string[]; if (files == null) { return; } foreach (string filename in files) { _FileInfo NewFile = new _FileInfo { FullName = filename }; _fileList.Items.Add(NewFile); b = false; _SelectedFilePath = NewFile.FullName; this.Title = NewFile.ToString(); } Func(); b = true; }
//read from pParse.para void pParse_Inter.pParse_read(string task_path, ref _Task _task) { string strLine = ""; try { pTop.classes.File _file = _task.T_File; FileStream fst = new FileStream(task_path + "\\param\\pParseTD.cfg", FileMode.Open); StreamReader sr = new StreamReader(fst, Encoding.Default); strLine = sr.ReadLine(); string subtitle = ""; ObservableCollection <_FileInfo> dfl = new ObservableCollection <_FileInfo>(); #region while (strLine != null) { strLine = strLine.Trim(); if (strLine.Length > 0 && strLine.StartsWith("#")) { } else if (strLine.Length > 0 && strLine[0] == '[' && strLine[strLine.Length - 1] == ']') { subtitle = strLine; } else if (strLine.Length > 0 && strLine.LastIndexOf("=") > -1) { if (subtitle.Equals("[Basic Options]")) { if (strLine.Length > 7 && strLine.Substring(0, 7).Equals("datanum")) { //if new a task, then dtnum=0 int dtnum = int.Parse(strLine.Substring(strLine.LastIndexOf("=") + 1)); for (int i = 0; i < dtnum; i++) { strLine = sr.ReadLine(); strLine = strLine.Substring(strLine.LastIndexOf("=") + 1); if (System.IO.File.Exists(@strLine)) { _FileInfo _fi = new _FileInfo(strLine); dfl.Add(_fi); } else { System.Windows.MessageBox.Show("\"" + strLine + "\" does not exist."); } } } else if (strLine.Length > 12 && strLine.Substring(0, 12).Equals("input_format")) { _file.File_format = strLine.Substring(strLine.LastIndexOf("=") + 1); if (_file.File_format.Equals("raw")) //raw { _file.File_format_index = (int)FormatOptions.RAW; //format改变会引起Data_file_list的清空 } else if (_file.File_format.Equals("mgf")) { _file.File_format_index = (int)FormatOptions.MGF; } _file.Data_file_list.Clear(); for (int i = 0; i < dfl.Count; i++) { _file.Data_file_list.Add(dfl[i]); } } } #region else if (subtitle.Equals("[Advanced Options]")) { if (strLine.Length > ("max_charge").Length && strLine.Substring(0, ("max_charge").Length).Equals("max_charge")) { _file.Pparse_advanced.Max_charge = int.Parse(strLine.Substring(strLine.LastIndexOf("=") + 1).Trim()); } else if (strLine.Length > ("max_mass").Length && strLine.Substring(0, ("max_mass").Length).Equals("max_mass")) { _file.Pparse_advanced.Max_mass = double.Parse(strLine.Substring(strLine.LastIndexOf("=") + 1).Trim()); } else if (strLine.Length > ("SN_threshold").Length && strLine.Substring(0, ("SN_threshold").Length).Equals("SN_threshold")) { _file.Pparse_advanced.Sn_ratio = double.Parse(strLine.Substring(strLine.LastIndexOf("=") + 1).Trim()); } else if (strLine.Length > ("mz_error_tolerance").Length && strLine.Substring(0, ("mz_error_tolerance").Length).Equals("mz_error_tolerance")) { _file.Pparse_advanced.Mz_tolerance = double.Parse(strLine.Substring(strLine.LastIndexOf("=") + 1).Trim()); } else if (strLine.Length > 8 && strLine.Substring(0, 8).Equals("co-elute")) { if (strLine.Substring(strLine.LastIndexOf("=") + 1).Equals("1")) { _file.Pparse_advanced.Mix_spectra = true; } else { _file.Pparse_advanced.Mix_spectra = false; } } else if (strLine.Length > 15 && strLine.Substring(0, 15).Equals("isolation_width")) { _file.Pparse_advanced.Isolation_width = double.Parse(strLine.Substring(strLine.LastIndexOf("=") + 1).Trim()); } else if (strLine.Length > ("model_type").Length && strLine.Substring(0, ("model_type").Length).Equals("model_type")) { _file.Pparse_advanced.Model = strLine.Substring(strLine.LastIndexOf("=") + 1).Trim().ToLower().Equals("svm") ? (int)ModelOptions.SVM : (int)ModelOptions.MARS; } else if (strLine.Length > 14 && strLine.Substring(0, 14).Equals("mars_threshold")) { _file.Pparse_advanced.Threshold = double.Parse(strLine.Substring(strLine.LastIndexOf("=") + 1).Trim()); } } #endregion else if (subtitle.Equals("[About pXtract]")) { if (strLine.Length > 3 && strLine.Substring(0, 3).Equals("m/z")) { _file.Pparse_advanced.Mz_decimal = int.Parse(strLine.Substring(strLine.LastIndexOf("=") + 1)); _file.Pparse_advanced.Mz_decimal_index = _file.Pparse_advanced.Mz_decimal - 1; } else if (strLine.Length > 9 && (strLine.Substring(0, 9).Equals("intensity") || strLine.Substring(0, 9).Equals("Intensity"))) { _file.Pparse_advanced.Intensity_decimal = int.Parse(strLine.Substring(strLine.LastIndexOf("=") + 1)); _file.Pparse_advanced.Intensity_decimal_index = _file.Pparse_advanced.Intensity_decimal - 1; } } } strLine = sr.ReadLine(); } sr.Close(); fst.Close(); #endregion } catch (Exception exe) { throw new Exception("[pParseTD_read] line: " + strLine + "\n" + exe.Message); } }
//read from pParse.para void pParse_Inter.readpParse_para(string task_path, ref _Task _task) { try { File _file = _task.T_File; FileStream fst = new FileStream(task_path + "\\param\\pParse.cfg", FileMode.Open); StreamReader sr = new StreamReader(fst, Encoding.Default); string strLine = sr.ReadLine(); string subtitle = ""; ObservableCollection <_FileInfo> dfl = new ObservableCollection <_FileInfo>(); #region while (strLine != null) { strLine = strLine.Trim(); if (strLine.Length > 0 && strLine.StartsWith("#")) { } else if (strLine.Length > 0 && strLine[0] == '[' && strLine[strLine.Length - 1] == ']') { subtitle = strLine; } else { if (subtitle.Equals("[Basic Options]")) { if (strLine.Length > 7 && strLine.Substring(0, 7).Equals("datanum")) { //if new a task, then dtnum=0 int dtnum = int.Parse(strLine.Substring(strLine.LastIndexOf("=") + 1)); for (int i = 0; i < dtnum; i++) { strLine = sr.ReadLine(); strLine = strLine.Substring(strLine.LastIndexOf("=") + 1); if (System.IO.File.Exists(@strLine)) { _FileInfo _fi = new _FileInfo(strLine); dfl.Add(_fi); } else { System.Windows.MessageBox.Show("\"" + strLine + "\" does not exist."); } } } } #region else if (subtitle.Equals("[Advanced Options]")) { if (strLine.Length > 8 && strLine.Substring(0, 8).Equals("co-elute")) { if (strLine.Substring(strLine.LastIndexOf("=") + 1).Equals("1")) { _file.Mix_spectra = true; } else { _file.Mix_spectra = false; } } else if (strLine.Length > 12 && strLine.Substring(0, 12).Equals("input_format")) { _file.File_format = strLine.Substring(strLine.LastIndexOf("=") + 1); if (_file.File_format.Equals("raw")) //raw { _file.File_format_index = (int)FormatOptions.RAW; //format改变会引起Data_file_list的清空 } else if (_file.File_format.Equals("mgf")) { _file.File_format_index = (int)FormatOptions.MGF; } else if (_file.File_format.Equals("wiff")) { _file.File_format_index = (int)FormatOptions.WIFF; } _file.Data_file_list.Clear(); for (int i = 0; i < dfl.Count; i++) { _file.Data_file_list.Add(dfl[i]); } } else if (strLine.Length > 15 && strLine.Substring(0, 15).Equals("isolation_width")) { _file.Pparse_advanced.Isolation_width = double.Parse(strLine.Substring(strLine.LastIndexOf("=") + 1).Trim()); } else if (strLine.Length > 14 && strLine.Substring(0, 14).Equals("mars_threshold")) { _file.Threshold = double.Parse(strLine.Substring(strLine.LastIndexOf("=") + 1).Trim()); } else if (strLine.Length > 8 && strLine.Substring(0, 8).Equals("ipv_file")) { _file.Pparse_advanced.Ipv_file = strLine.Substring(strLine.LastIndexOf("=") + 1).Trim(); } else if (strLine.Length > 11 && strLine.Substring(0, 11).Equals("trainingset")) { _file.Pparse_advanced.Trainingset = strLine.Substring(strLine.LastIndexOf("=") + 1).Trim(); } } #endregion #region else if (subtitle.Equals("[Internal Switches]")) { if (strLine.Length > 13 && strLine.Substring(0, 13).Equals("output_mars_y")) { _file.Pparse_advanced.Output_mars_y = int.Parse(strLine.Substring(strLine.LastIndexOf("=") + 1)); } else if (strLine.Length > 10 && strLine.Substring(0, 10).Equals("delete_msn")) { _file.Pparse_advanced.Output_msn = int.Parse(strLine.Substring(strLine.LastIndexOf("=") + 1)) == 0 ? 1 : 0; } else if (strLine.Length > 10 && strLine.Substring(0, 10).Equals("output_mgf")) { _file.Pparse_advanced.Output_mgf = int.Parse(strLine.Substring(strLine.LastIndexOf("=") + 1)); } else if (strLine.Length > 9 && strLine.Substring(0, 9).Equals("output_pf")) { _file.Pparse_advanced.Output_pf = int.Parse(strLine.Substring(strLine.LastIndexOf("=") + 1)); } else if (strLine.Length > 10 && strLine.Substring(0, 10).Equals("debug_mode")) { _file.Pparse_advanced.Debug_mode = int.Parse(strLine.Substring(strLine.LastIndexOf("=") + 1)); } else if (strLine.Length > ("check_activationcenter").Length && strLine.Substring(0, ("check_activationcenter").Length).Equals("check_activationcenter")) { _file.Pparse_advanced.Check_activationcenter = int.Parse(strLine.Substring(strLine.LastIndexOf("=") + 1)); } else if (strLine.Length > ("output_all_mars_y").Length && strLine.Substring(0, ("output_all_mars_y").Length).Equals("output_all_mars_y")) { _file.Pparse_advanced.Output_all_mars_y = int.Parse(strLine.Substring(strLine.LastIndexOf("=") + 1)); } else if (strLine.Length > 13 && strLine.Substring(0, 13).Equals("rewrite_files")) { _file.Pparse_advanced.Rewrite_files = int.Parse(strLine.Substring(strLine.LastIndexOf("=") + 1)); } else if (strLine.Length > ("export_unchecked_mono").Length && strLine.Substring(0, ("export_unchecked_mono").Length).Equals("export_unchecked_mono")) { _file.Pparse_advanced.Export_unchecked_mono = int.Parse(strLine.Substring(strLine.LastIndexOf("=") + 1)); } else if (strLine.Length > ("cut_similiar_mono").Length && strLine.Substring(0, ("cut_similiar_mono").Length).Equals("cut_similiar_mono")) { _file.Pparse_advanced.Cut_similiar_mono = int.Parse(strLine.Substring(strLine.LastIndexOf("=") + 1)); } else if (strLine.Length > 10 && strLine.Substring(0, 10).Equals("mars_model")) { _file.Model = int.Parse(strLine.Substring(strLine.LastIndexOf("=") + 1)); _file.ModelIndex = ConfigHelper.mars_model.IndexOf(_file.Model); //if the value is invalid if (_file.ModelIndex == -1) { _file.ModelIndex = 0; _file.Model = ConfigHelper.mars_model[_file.ModelIndex]; } } else if (strLine.Length > ("output_trainingdata").Length && strLine.Substring(0, ("output_trainingdata").Length).Equals("output_trainingdata")) { _file.Pparse_advanced.Output_trainingdata = int.Parse(strLine.Substring(strLine.LastIndexOf("=") + 1)); } } #endregion else if (subtitle.Equals("[About pXtract]")) { if (strLine.Length > 3 && strLine.Substring(0, 3).Equals("m/z")) { _file.Mz_decimal = int.Parse(strLine.Substring(strLine.LastIndexOf("=") + 1)); _file.Mz_decimal_index = _file.Mz_decimal - 1; } else if (strLine.Length > 9 && (strLine.Substring(0, 9).Equals("intensity") || strLine.Substring(0, 9).Equals("Intensity"))) { _file.Intensity_decimal = int.Parse(strLine.Substring(strLine.LastIndexOf("=") + 1)); _file.Intensity_decimal_index = _file.Intensity_decimal - 1; } } } strLine = sr.ReadLine(); } sr.Close(); fst.Close(); #endregion } catch (Exception exe) { throw new Exception(exe.Message); } }