在C中指定文件扩展名

时间:2014-10-28 21:40:23

标签: c file-io

对于我的项目,我从用户获取文件名并将其发送到函数以创建实际文件/如果已存在则将其打开。我遇到的问题是,当编译器创建文件时...它实际上只是一个文件。如何通过命令行接收名称后指定文件类型?

来自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;

3 个答案:

答案 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