Мне нужно преобразовать путь к файлу в Windows, скажем, из c: \ abc \ efg \ mmm.txt в c: \\ abc \\ mm.txt? - PullRequest
0 голосов
/ 29 февраля 2012

как мне изменить путь к файлу в виде `

c: \ abc \ efg \ mmm.txt

на

c: \\ abc \\ mm.txt?

и что я могу сделать, чтобы изменить

.txt расширение, скажем, .doc ?

`РЕДАКТИРОВАНИЕ:

Эти пути приведены только для иллюстрации.

Фактические пути составленыбукв дисков и любое количество подкаталогов.И расширения файлов могут быть любого формата.

1 Ответ

1 голос
/ 29 февраля 2012

Ваша задача не совсем понятна.Если вы ТОЛЬКО хотите продублировать обратную косую черту, и это чистый C и у вас нет широких символов (то есть только ASCII), то вы можете сделать что-то вродеобратные косые.Чтобы заменить расширение, для простоты, вы можете определить расширение, используя int len = strlen(str); (может быть так же просто, как проверить последние символы в str).После этого вы можете заменить условие while на while(p - str < len - 3), а затем strcat(target, "doc");

...