测试文本文件大小

&1 源代码说明

//测试文本名称为example.txt

const char * FileName = "example.txt";

long m,n;
ifstream file(FileName, ios::in|ios::binary);
m = file.tellg();
file.seekg(0, ios::end);
n = file.tellg();
file.close();
cout <<"size of " "<< filename<<" " is "<< (n-m)<<" bytes. "<<endl;

&2 函数说明

  • seekg()是对输入文件定位,它有两个参数:第一个参数是偏移量,第二个参数是基地址。

    对于第一个参数,可以是正负数值,正的表示向后偏移,负的表示向前偏移。而第二个参数可以是:
    ios::beg:表示输入流的开始位置
    ios::cur:表示输入流的当前位置
    ios::end:表示输入流的结束位置

  • tellg()函数不需要带参数,它返回当前定位指针的位置,也代表着输入流的大小。

&3 使用

    •  将生成的.exe文件放到与example.txt同目录下运行时,可直接得到example.txt的大小;
    • 在运行这段代码时,如果example.txt在当前目录,则能得到大小,否则输出大小为0;
原文地址:https://www.cnblogs.com/sophia-hxw/p/5670890.html