Реализую в c# некоторые команды adb. Столкнулся с проблемой, если в пути (в названии) есть пробел или тире.
Вот такой формат использую:
(@" adb pull {0} {1}", pathRemote,pathLocal)
С одинарными кавычками adb не работает - ругается.
Если двойные, то добавляется экранирование и опять adb не понимает.
Как думаете есть способы?
Можно ли добавить двойные кавычки без экранирования?
Сама по себе команда adb pull "путь с пробелами" прекрасно работает. Создание строки:
string path = "путь с пробелами";
string abdCommand = $" adb pull \"{path}\"";
Или в вашем случае:
string abdCommand = string.Format(@" adb pull ""{0}"" ""{1}""", pathRemote, pathLocal);
И там, и там на выходе будет следующая строка:
adb pull "param 1" "param 2"
А она является валидной.
Может у вас прблемы со значениями pathRemote и pathLocal, а не с командой? (/ в конце не убрали и тд.)
Нашел ответ. не знаю насколько корректный, но работает
string.Format(@" pull ""{0}"" ""{1}", pathRemote, pathLocal);
т.е. последнюю скобку не закрываем
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости