Удаление определенного участка пути - PullRequest
0 голосов
/ 14 июня 2011

У меня есть несколько путей, например, в памяти (содержится в ArrayList):

C: \ Program Files \ Product \ file.xml

Что я хочу сделать, это удалить «C: \ Program Files \» из пути, так что просто «Product \ file.xml».Я знаю, что мог бы сделать это, просто заменив 'C: \ Program Files \' на '', но проблема возникает, когда у меня есть пути из локализованной среды, например, немецкого языка, где путь становится:

C: \ Program \ Product \ file.xml

Есть предложения, как это сделать?

Говоря простым языком, я хочу удалить все до и включая вторую '\'.

Спасибо.

Ответы [ 2 ]

1 голос
/ 14 июня 2011

Если вы хотите получить все после второго обратного слеша, используйте это:

path.Substring(path.IndexOf('\\', path.IndexOf('\\') + 1) + 1)

Если все, что вы хотите сделать, это взять все после второго до последнего обратного слэша, используйте это:

path.Substring(path.LastIndexOf('\\', path.LastIndexOf('\\') - 1) + 1)
1 голос
/ 14 июня 2011

У меня нет Visual Studio на этом компьютере, поэтому я не могу проверить, но должно быть что-то вроде этого:

myString.Substring(myString.IndexOf('\\', myString.IndexOf('\\')))

Возможно, вам понадобится добавить «+ 1» послеэтот второй вызов IndexOf, чтобы заставить его искать в нужном месте, хотя

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...