C语言中的fopen()函数打开文件时,文件名有什么限制吗?为什么当我的文件名包含点或者下划线时,打开操作总是失败的?万分感激。
文件主名和扩展名可以使用的字符是:
英文字母:A—z(大小写等价)
数 字:0—9
汉 字
特殊符号:$#&@()-[]^~等。
各种控制字符和下列字符不能用在文件名中:< > / \ | : " * ? //这些字符已做它用
文件名字母大小写的区分:
DOS下文件名不区分大小写。
在Windows系统下,显示区分大小写,读写操作时不区分。
在类Unix/Linux系统下,区分字母大小写。
文件名长度的限制:
DOS下文件名长度应为 8.3 即8位文件名3位扩展名。
在Windows系统下,可以多个扩展名,以最后一个为准,文件名长度255。
在类Unix/Linux系统下,文件名长度255,带路径的长度1024,也有系统4096。
文件名可以直接写进去函数里,也可以放在变量里:
FILE *fp;文件名若带路径,单反斜杠要写成双反斜杠,例如:
char namein[]="C:\\path\\abc.txt";
C语言中的fopen()函数打开文件时,文件名有什么限制吗?
文件名必须是一个C字符串,它是符合操作系统标准的合法文件,含.和下划线不会错。如:FILE *fin = fopen("data_.dat", "r");FILE *fout = fopen("C:\\\\temp\\\\o_data.dat", "w");由于\\为转义操作符,故目录要用两个\\\\
c语言中,fopen(“文件名”,“打开方式”)中的文件名可以是变量吗?
文件名若带路径,单反斜杠要写成双反斜杠,例如:char namein[]="C:\\\\path\\\\abc.txt";长路径可用8字母格式缩写:C:\\Documents and Settings\\Wang\\...缩写:char namein[]="C:\\\\Docume~1\\\\Wang\\\\abc.txt";二进制文件打开方式用rb:fp=fopen("abc.txt","rb"); 或:fp=fopen(namein,"r...
c 语言open()函数
fopen函数用来打开一个文件,其调用的一般形式为:文件指针名=fopen(文件名,使用文件方式)其中,“文件指针名”必须是被说明为FILE 类型的指针变量,“文件名”是被打开文件的文件名。 “使用文件方式”是指文件的类型和操作要求。“文件名”是字符串常量或字符串数组。例如:FILE *fp;fp=("file a"...
c语言 文件操作 fopen()
当然有!路径不对,比如向A盘创建文件,却不存在A盘;向X盘创建文件却空间太小,以及文件名书写不符合规范等等。
请问c语言的fopen(filename,"w")对filename有什么要求?
你的filename没有初始化,filename[strlen(filename)-1]='\\0';这句是废话,因为strlen本来就是读到'\\0'结束的
C语言fopen函数中文件打开方式(参数值)
C语言fopen函数用于打开文件。函数原型:FILE * fopen(const char * path,const char * mode);参数:path 字符串类型,表示文件所在的路径,包括文件名 mode 打开文件的模式、返回值:文件顺利打开后,指向该流的文件指针就会被返回。如果文件打开失败则返回NULL,并把错误代码存在errno 中。mode:...
c语言中,fopen(“文件名”,“打开方式”)中的文件名可以是变量吗?谢谢...
从文件中读取一个数 include <stdio.h> include <stdlib.h> void main(void){ int a;char str[100];\/\/储存文件名的数组 FILE *fp;printf("请输入文件名:");gets(str);if (NULL == (fp = fopen(str, "r")))\/\/注意这的表达形式 { printf("文件打开失败!\\n");exit(0);} whil...
C语言Fopen函数的用法
C语言中的fopen函数是一个强大的工具,用于以特定方式打开文件。其基本调用形式是:`FILE *fp = fopen("文件名", "使用文件方式");`其中,fp是一个指向FILE类型的指针,"文件名"是需要操作的文件的路径,而"使用文件方式"决定了操作类型,如读取、写入、追加或二进制模式。例如,`fp = fopen("...
C语言 fopen函数 读取文件出错 怎么回事
思路没有错。估计是文件名长度问题。如果你用的是早期的编译平台,文件主名不得长于8个字符,扩展名不得多于3个字符。批处理用*.dat就行啊……
在C语言fopen()函数中
r 打开只读文件,该文件必须存在。r+具有读写属性,从文件头开始写,保留原文件中没有被覆盖的内容;w 打开只写文件,若文件存在则文件长度清为0,即该文件内容会消失。若文件不存在则建立该文件。wb 只写打开或新建一个二进制文件;只允许写数据。