先看代码
#include "stdafx.h"
#include <stack>
#include <string>
#include <iostream>
using namespace std;
long lenOfFile(FILE* f)
{
long curpos=ftell(f);
fseek(f,0L,SEEK_END);
long size=ftell(f);
fseek(f,curpos,SEEK_SET);
return size;
}
int main()
{
FILE* f=fopen("cjc","wt");
for(int i=1;i<=100;i++)
{
fprintf(f,"%d\n",i);
}
fclose(f);
f=fopen("cjc","rt");
long size=lenOfFile(f);
fclose(f);
cout<<size<<endl;
f=fopen("cjc","rt");
int temp;
while(fscanf(f,"%d",&temp)!=EOF)
{
cout<<temp<<endl;
}
fclose(f);
system("pause");
return 0;
}
操作参数为“wb”时,“\n”代表换行,文本文件中输入数据的表现形式没有换行,但是不影响以int为单位的读取操作
无论是"t"还是"b"最终都是以字符的形式存储的(也就是说在文件中数字所占的存储空间完全是数字字符所占的空间)
文本文件中以“\n”或者“ ”为两个待处理数据的存储或者读取的分隔符,在读取或者存储时以输入输出控制符对输入输出数据进行解释