gpt4 book ai didi

c - 我需要将 Windows 中的文件路径从 c :\abc\efg\mmm. txt 转换为 c :\\abc\\mm. txt?

转载 作者:行者123 更新时间:2023-11-30 15:58:47 25 4
gpt4 key购买 nike

如何更改“

”形式的文件路径

c:\abc\efg\mmm.txt

c:\\abc\\mm.txt ?

我能做些什么来改变

.txt extension to, let's say .doc?

`编辑:

这些路径仅供说明之用。

实际路径由驱动器号和任意数量的子目录组成。文件扩展名可以是任何格式。

最佳答案

您的任务不太明确。如果您只想复制反斜杠并且它是纯 C 并且您没有宽字符(即仅限 ASCII),那么您可以执行以下操作:

char* p = str;
char target[MAX_PATH + 1]; // or some other way to be sure it will hold the transformed string
char* t = target;

while (*p) {
char ch = *p++;
if (ch == '\\')
*t++ = '\\';
*t++ = ch;
}

*t = '\0';

这将重复反斜杠。为了替换扩展名,为了简单起见,您可能需要使用 int len = strlen(str); 来检测扩展名。 (可能就像检查 str 中的最后一个字符一样简单)。完成后,您可以替换 while条件 while(p - str < len - 3)然后strcat(target, "doc");

关于c - 我需要将 Windows 中的文件路径从 c :\abc\efg\mmm. txt 转换为 c :\\abc\\mm. txt?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9501056/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com