如何使用fopen在当前目录的文件夹内写入文件
How to write file inside folder in current directory using fopen
我想写入一个文件,该文件位于当前工作目录的文件夹内,文件名是传递给函数的数值。
void record_data(number[]) {
FILE *fptr;
fptr = fopen("./folder/number", "w");
}
我无法以这种方式这样做(它将文件命名为 number
)。
我怎样才能正确地做到这一点?
假设您的意思是 int number
而不是您的 number[]
,后者无效 C.
您可以使用 sprintf()
,或者最好使用 snprintf()
:
void record_data(int number) {
char str[255]; //Large enough buffer.
snprintf(str, sizeof(str), "./folder/%d", number);
FILE *fptr;
fptr = fopen(str, "w");
}
并考虑在您的 FILE *
上调用 fclose()
。
我想写入一个文件,该文件位于当前工作目录的文件夹内,文件名是传递给函数的数值。
void record_data(number[]) {
FILE *fptr;
fptr = fopen("./folder/number", "w");
}
我无法以这种方式这样做(它将文件命名为 number
)。
我怎样才能正确地做到这一点?
假设您的意思是 int number
而不是您的 number[]
,后者无效 C.
您可以使用 sprintf()
,或者最好使用 snprintf()
:
void record_data(int number) {
char str[255]; //Large enough buffer.
snprintf(str, sizeof(str), "./folder/%d", number);
FILE *fptr;
fptr = fopen(str, "w");
}
并考虑在您的 FILE *
上调用 fclose()
。