.NET 4.x Некорректная работа TrimStart() - C#
Формулировка задачи:
Всем привет. Столкнулся со странной проблемой.
Имеется такой код:
Запускаю отладку приложения, тестирую и получаю такое:
в переменной
Листинг программы
- private void BtSelectDwgFile_OnClick(object sender, RoutedEventArgs e)
- {
- try
- {
- var ofd = new Autodesk.AutoCAD.Windows.OpenFileDialog("Выбор чертежа для добавления в базу", _dwgBaseFolder, "dwg", "name",
- Autodesk.AutoCAD.Windows.OpenFileDialog.OpenFileDialogFlags.NoFtpSites |
- Autodesk.AutoCAD.Windows.OpenFileDialog.OpenFileDialogFlags.NoShellExtensions |
- Autodesk.AutoCAD.Windows.OpenFileDialog.OpenFileDialogFlags.NoUrls |
- Autodesk.AutoCAD.Windows.OpenFileDialog.OpenFileDialogFlags.DefaultIsFolder |
- Autodesk.AutoCAD.Windows.OpenFileDialog.OpenFileDialogFlags.ForceDefaultFolder |
- Autodesk.AutoCAD.Windows.OpenFileDialog.OpenFileDialogFlags.DoNotTransferRemoteFiles);
- var needLoop = true;
- while (needLoop)
- {
- var ofdresult = ofd.ShowDialog();
- if (ofdresult == System.Windows.Forms.DialogResult.OK)
- {
- var selectedFile = ofd.Filename;
- if (selectedFile.Contains(_dwgBaseFolder))
- {
- if (DwgBaseHelpers.Is2010DwgVersion(selectedFile))
- {
- TbSourceFile.Text = selectedFile.TrimStart(_dwgBaseFolder.ToCharArray());
- BtAccept.IsEnabled = true;
- needLoop = false;
- }
- else
- {
- MpMsgWin.Show("Выбранный файл должен быть сохранен в версии AutoCAD 2010!");
- }
- }
- else
- {
- MpMsgWin.Show("Указанный файл должен находиться в подпапке папки " + _dwgBaseFolder);
- }
- }
- else if (ofdresult == System.Windows.Forms.DialogResult.Cancel) return;
- else needLoop = false;
- }
- }
- catch (Exception exception)
- {
- MpExWin.Show(exception);
- }
- finally
- {
- Focus();
- }
- }
selectedFile
значение "E:\\Проекты\\ModPlu5\\ModPlus_builded\\Data\\DwgBase\\Drawings\\Тестовая папка\\Тестовый Чертеж.dwg" в переменной_dwgBaseFolder
значение "E:\\Проекты\\ModPlu5\\ModPlus_builded\\Data\\DwgBase" Но после строчкиTbSourceFile.Text = selectedFile.TrimStart(_dwgBaseFolder.ToCharArray());
в текстовом поле я получаю результат "rawings\\Тестовая папка\\Тестовый Чертеж.dwg" Т.е. метод TrimStart() отрезает за компанию и первую букву! Даже не знаю в какую сторону начать копать проблемуРешение задачи: «.NET 4.x Некорректная работа TrimStart()»
textual
Листинг программы
- public static string TrimStart(string target, string trimString)
- {
- var result = target;
- while (result.StartsWith(trimString))
- {
- result = result.Substring(trimString.Length);
- }
- return result;
- }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д