
4个回答
展开全部
C语言有两个函数对文件操作
fopen 和open,
MSDN中两函数原型为
FILE *fopen( const char *filename, const char *mode );
int _open( const char *filename, int oflag [, int pmode] );
两个函数都可以在第二(三)个参数指定文件打开方式,这种方式包括了文本方式和二进制方式
比如fopen 为例(这个函数编程用的多些)
Windows系统默认打开方式是文本方式的(linux二进制方式)
在第二个参数中指定打开方式为字符‘b’ 或者‘t’,分别为二进制方式和文本方式,还可以加入一些其他的打开选项(只读、只写、独占...)
// 二进制方式
FILE* pFile = fopen("C:\\Test.txt", "b")
// 文本方式
FILE* pFile = fopen("C:\\Test.txt", "t")
你还可以加一些其他选项,在不同的操作系统中有打开方式默认的话是可以不写的用open函数也是类似的
fopen 和open,
MSDN中两函数原型为
FILE *fopen( const char *filename, const char *mode );
int _open( const char *filename, int oflag [, int pmode] );
两个函数都可以在第二(三)个参数指定文件打开方式,这种方式包括了文本方式和二进制方式
比如fopen 为例(这个函数编程用的多些)
Windows系统默认打开方式是文本方式的(linux二进制方式)
在第二个参数中指定打开方式为字符‘b’ 或者‘t’,分别为二进制方式和文本方式,还可以加入一些其他的打开选项(只读、只写、独占...)
// 二进制方式
FILE* pFile = fopen("C:\\Test.txt", "b")
// 文本方式
FILE* pFile = fopen("C:\\Test.txt", "t")
你还可以加一些其他选项,在不同的操作系统中有打开方式默认的话是可以不写的用open函数也是类似的
展开全部
#include<stdio.h>
02.struct student
03.{
04.
char xuehao[20];
05.
char name[20];
06.
char sex[3];
07.
double score[3];
08.
double ave;
09.
double s;
10.};
11.void main()
12.{
13.
struct student stu[1];
14.
int i;
15.
scanf("%s %s %s",stu[0].xuehao,stu[0].name,stu[0].sex);
16.
stu[0].s=0;
17.
for(i=0;i<3;i++)
18.
{
19.
scanf("%lf",&stu[0].score[i]);
20.
stu[0].s+=stu[0].score[i];
21.
}
22.
stu[0].ave=stu[0].s/3;
23.
24.
25.
printf("%s",stu[0].xuehao);
26.
printf(" %s",stu[0].name);
27.
printf(" %s",stu[0].sex);
28.
for(i=0; i<3; i++)
29.
{
30.
printf(" %.2f",stu[0].score[i]);
31.
}
32.
printf(" %.2f %.2f\n",stu[0].ave,stu[0].s);
33.}
一般用fopen打开就行了
02.struct student
03.{
04.
char xuehao[20];
05.
char name[20];
06.
char sex[3];
07.
double score[3];
08.
double ave;
09.
double s;
10.};
11.void main()
12.{
13.
struct student stu[1];
14.
int i;
15.
scanf("%s %s %s",stu[0].xuehao,stu[0].name,stu[0].sex);
16.
stu[0].s=0;
17.
for(i=0;i<3;i++)
18.
{
19.
scanf("%lf",&stu[0].score[i]);
20.
stu[0].s+=stu[0].score[i];
21.
}
22.
stu[0].ave=stu[0].s/3;
23.
24.
25.
printf("%s",stu[0].xuehao);
26.
printf(" %s",stu[0].name);
27.
printf(" %s",stu[0].sex);
28.
for(i=0; i<3; i++)
29.
{
30.
printf(" %.2f",stu[0].score[i]);
31.
}
32.
printf(" %.2f %.2f\n",stu[0].ave,stu[0].s);
33.}
一般用fopen打开就行了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
参考资料: http://www.diybl.com/course/3_program/c++/cppjs/200822/98428.html
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
fputc,fgetc,fopen,fclose,fseek,ftell,
fwrite,fread,这是常用的文件操作函数,用百度百科搜这几个名字,可以查看倒详细的函数声明及用法。下面是我刚写的一个把一个文件保存到另一个文件的程序(不保存最后一个字节),里面用到了几个函数,你可以看看
#include<stdio.h>
int main()
{ FILE *fp1,*fp2;
long int len;
fp1=fopen("name1","rb+"); //name1为原来的文件,例如f:\\a.txt
fp2=fopen("name2","wb+"); //name2为你保存的文件,例如f:\\b.txt
fseek(fp1,0,2); //将指针移到文件结尾
len=ftell(fp1); //得到文件长度
rewind(fp1); //文件指着回到文件头
char c;
for(long int i=0;i<len-1;i++)
{ c=fgetc(fp1); //从fp1文件中读取一个字节
fputc(c,fp2); //把这个字节打印倒fp2
}
fclose(fp1); //关闭文件fp1
fclose(fp2); //关闭文件fp2
fwrite,fread,这是常用的文件操作函数,用百度百科搜这几个名字,可以查看倒详细的函数声明及用法。下面是我刚写的一个把一个文件保存到另一个文件的程序(不保存最后一个字节),里面用到了几个函数,你可以看看
#include<stdio.h>
int main()
{ FILE *fp1,*fp2;
long int len;
fp1=fopen("name1","rb+"); //name1为原来的文件,例如f:\\a.txt
fp2=fopen("name2","wb+"); //name2为你保存的文件,例如f:\\b.txt
fseek(fp1,0,2); //将指针移到文件结尾
len=ftell(fp1); //得到文件长度
rewind(fp1); //文件指着回到文件头
char c;
for(long int i=0;i<len-1;i++)
{ c=fgetc(fp1); //从fp1文件中读取一个字节
fputc(c,fp2); //把这个字节打印倒fp2
}
fclose(fp1); //关闭文件fp1
fclose(fp2); //关闭文件fp2
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询