对于我的项目,我从用户获取文件名并将其发送到函数以创建实际文件/如果已存在则将其打开。我遇到的问题是,当编译器创建文件时...它实际上只是一个文件。如何通过命令行接收名称后指定文件类型?
来自main:
printf("Enter the name of the file in which you wish to create\nor if you know the name of an exisiting file, enter that file name:\n");
scanf(" %s", FNAME);
File = FileOpen(FNAME);
功能:
FILE *FileOpen(char* FNAME) {
FILE* pFile;
pFile = fopen(FNAME,"rb+");
if (!pFile)
pFile = fopen(FNAME,"wb+");
return pFile;
答案 0 :(得分:0)
这是我在朋友的一些挖掘/帮助后最终做的事情。
sprintf(FNAME, "%s%s", FNAME, ".dat");
感谢所有回复
答案 1 :(得分:0)
试试这个:
pFile = fopen(“path \ FNAME.extension”,“rb +”);
此处输入文件的绝对路径,文件名及其在qotes内的扩展名。
如果文件在同一个directroy中,则不需要路径! EX- FILE * fp; fp = fopen(“file.txt”,“r”);
这里file.txt与程序文件的目标相同。
答案 2 :(得分:0)
#include <stdio.h>
#include <stdlib.h>
int main()
{
FILE * fp;
fp = fopen ("file.txt", "w+");
fprintf(fp, "%s %s %s %d", "We", "are", "in", 2014);
fclose(fp);
return(0);
}
//this code will create a txt file named file.txt and will contain "We are in 2014