无法使用代码块创建数据文件
can not create data file using code blocks
我已经编写了创建数据文件的代码。在 if-else 块中执行 else 块,但文件未在所需位置创建。为什么会这样?
#include <stdio.h>
int main() {
FILE *fptr;
fptr = fopen("C:\test.txt", "w");
if(fptr == NULL) // codition when file is not created
{
printf("File can not be created. \n");
}
else
{
printf("file has been successfully created. \n");
}
//fputs(string, file_pointer_variable)
fputs("my first write to file", fptr);
fclose(fptr);
return 0;
}
您的问题可能属于 writing/creating 中 c:\
中的一个文件的 permissions/rights
必须更改您的代码以避免在 fopen
失败时使用该文件,例如:
#include <stdio.h>
int main(void)
{
FILE *fptr;
fptr = fopen("C:\test.txt", "w");
if(fptr == NULL) // codition when file is not created
{
perror("fopen error: ");
return 1;
}
else
{
printf("file has been successfully created. \n");
fputs("my first write to file", fptr);
fclose(fptr);
}
return 0;
}
如您所见,我使用了 perror 可以添加有关 fopen
函数发生错误的信息。
我已经编写了创建数据文件的代码。在 if-else 块中执行 else 块,但文件未在所需位置创建。为什么会这样?
#include <stdio.h>
int main() {
FILE *fptr;
fptr = fopen("C:\test.txt", "w");
if(fptr == NULL) // codition when file is not created
{
printf("File can not be created. \n");
}
else
{
printf("file has been successfully created. \n");
}
//fputs(string, file_pointer_variable)
fputs("my first write to file", fptr);
fclose(fptr);
return 0;
}
您的问题可能属于 writing/creating 中 c:\
必须更改您的代码以避免在 fopen
失败时使用该文件,例如:
#include <stdio.h>
int main(void)
{
FILE *fptr;
fptr = fopen("C:\test.txt", "w");
if(fptr == NULL) // codition when file is not created
{
perror("fopen error: ");
return 1;
}
else
{
printf("file has been successfully created. \n");
fputs("my first write to file", fptr);
fclose(fptr);
}
return 0;
}
如您所见,我使用了 perror 可以添加有关 fopen
函数发生错误的信息。