C语言如何更改浏览目录
How to Change Browsing directory in C Language
我想在其他目录中创建一个文件,而不是原始程序所在的目录。
FILE * fp;
fp=fopen("a.txt","w");
但是我想更改 create/write 文件所在的目录。
通常 fopen
的语法如下:
fopen("path/to/file", ...)
如果仅给出名称,则假定它与可执行文件位于同一文件夹中。所以如果你想在另一个文件夹中做一些事情,你应该像这样放置那个文件夹的路径:
fp = fopen("<path>/a.txt", "w");
这取决于您使用的操作系统类型。
如果您正在使用 Linux 或类似的系统,并且您希望在目录 /home/username/folder
中创建文件(假设您对该目录具有写入权限),您可以简单地执行以下操作:
FILE * fp;
fp=fopen("/home/username/folder/a.txt","w");
如果你正在使用 Windows,并且你想在 C:\Users\username\folder
中创建一个文件(假设有写权限),你可以这样做:
FILE * fp;
fopen("C:\Users\username\folder\a.txt", "w");
请注意,在 Windows 平台上,您必须对路径的 \
字符进行转义,因为当我们在字符串中包含 \
(反斜杠)时,它会被解释为转义序列并与下一个字符隐式关联,如 \n
或 \t
。但是由于我们没有使用任何转义序列,并且想要一个实际的 \
,我们必须为其插入一个转义序列 \
。
正如@stark 所指出的,我们还可以使用 /
(正斜杠)代替 \
.
作为字符串内的路径
我想在其他目录中创建一个文件,而不是原始程序所在的目录。
FILE * fp;
fp=fopen("a.txt","w");
但是我想更改 create/write 文件所在的目录。
通常 fopen
的语法如下:
fopen("path/to/file", ...)
如果仅给出名称,则假定它与可执行文件位于同一文件夹中。所以如果你想在另一个文件夹中做一些事情,你应该像这样放置那个文件夹的路径:
fp = fopen("<path>/a.txt", "w");
这取决于您使用的操作系统类型。
如果您正在使用 Linux 或类似的系统,并且您希望在目录 /home/username/folder
中创建文件(假设您对该目录具有写入权限),您可以简单地执行以下操作:
FILE * fp;
fp=fopen("/home/username/folder/a.txt","w");
如果你正在使用 Windows,并且你想在 C:\Users\username\folder
中创建一个文件(假设有写权限),你可以这样做:
FILE * fp;
fopen("C:\Users\username\folder\a.txt", "w");
请注意,在 Windows 平台上,您必须对路径的 \
字符进行转义,因为当我们在字符串中包含 \
(反斜杠)时,它会被解释为转义序列并与下一个字符隐式关联,如 \n
或 \t
。但是由于我们没有使用任何转义序列,并且想要一个实际的 \
,我们必须为其插入一个转义序列 \
。
正如@stark 所指出的,我们还可以使用 /
(正斜杠)代替 \
.