源码下载:点击下载

源码如下:

#include <iostream>
#include <io.h>
#include <sys\stat.h>
#include <afx.h>
#define_AFXDLL
usingnamespacestd;

voidmain()
{
    //此文件在工程打开状态下为不可访问
char*filepath ="..\\test.ncb";

//方法一
struct_stat info;
    _stat(filepath, &info);
    intsize =info.st_size;
    cout<<size<<endl;

//方法二
FILE*file =fopen(filepath, "rb");
    if(file)
    {
        intsize =filelength(fileno(file));
        cout<<size<<endl;
        fclose(file);
    }

//方法三
CFile cfile;
    if(cfile.Open(filepath, CFile::modeRead))
    {
        intsize =cfile.GetLength();
        cout<<size<<endl;
    }

//方法四
HANDLE handle =CreateFile(filepath, FILE_READ_EA, FILE_SHARE_READ, 0, OPEN_EXISTING, 0, 0);
    if(handle !=INVALID_HANDLE_VALUE)
    {
        intsize =GetFileSize(handle, NULL);
        cout<<size<<endl;
        CloseHandle(handle);
    }
}

VS2005:若编译链接不通过,需要修改工程设置:

(1) Configuration Properties -> C/C++ -> Code Generation -> Runtime Library, 选择"Multi-threaded Debug(/MTd)"

(2) Configuration Properties -> Linker -> Input -> Ignore Specific Library, 输入"msvcprtd.lib"

例子中,由于在工程打开状态下,test.ncb文件无法打开,所以方法二、三无法获取文件大小,因此推荐使用方法一、四。

如果还有其它方法,请大家补充。

感谢贼寇在何方补充了第四种方法!

转自: http://www.cnblogs.com/cxun/archive/2009/02/24/1397153.html

转载于:https://www.cnblogs.com/bigbigtree/p/3486878.html

C/C++多种方法获取文件大小(转)相关推荐

  1. VC C/C++ 4种方法获取文件大小 Windows API

    #include <iostream> #include <windows.h> #include <io.h> #include <sys\stat.h&g ...

  2. Java 获取文件大小

    Java 获取文件大小 本文介绍几种方法获取文件大小,分别是java io 和 nio 以及第三方库实现. 标准的java io 首先开始一个简单实例计算文件大小,使用File.lenght()方法: ...

  3. 【转】Java中获取文件大小的正确方法

    [转]Java中获取文件大小的正确方法 本文出处:http://blog.csdn.net/chaijunkun/article/details/22387305,转载请注明.由于本人不定期会整理相关 ...

  4. php study 直接显示代码_PHP获取文件大小的方法详解(附视频)

    本篇文章主要给大家介绍PHP获取文件大小以及封装获取正常大小的具体方法. 对于初入门的PHP新手来说,PHP获取文件大小这个功能实现,或许有一定的难度.但是相信新手小白们在看过本篇文章介绍后,一定能轻 ...

  5. 编写测试:VC下获取文件大小的4种方法

    代码参考自lailx的博客:获取文件大小的4种方法(http://www.cnblogs.com/lailx/archive/2011/11/20/2256550.html) 1 // TestGet ...

  6. php js获取文件大小,js+ajax实现获取文件大小的方法_javascript技巧

    本文实例讲述了js+ajax实现获取文件大小的方法.分享给大家供大家参考,具体如下: 顾名思义,通过JS和Ajax来获取上传文件的大小,在上传之前可以有个判断,对上传的文件有所控制,因为js控制文件大 ...

  7. java中如何设置浏览器宽度_[Java教程]关于JS中获取浏览器高度和宽度值的多种方法(多浏览器)_星空网...

    关于JS中获取浏览器高度和宽度值的多种方法(多浏览器) 2017-08-07 0 三种浏览器获取值方法 IE中: document.body.clientWidth ==> BODY对象宽度 d ...

  8. java中比较两个文件的大小_Java实现获取文件大小的几种方法

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 目前Java获取文件大小的方法有两种: 1.通过file的length()方法获取: 2.通过流式方法获取: 通过流式方法又有两种,分别是旧的java.i ...

  9. Java中获取文件大小的正确方法

    本文出处:http://blog.csdn.net/chaijunkun/article/details/22387305,转载请注明.由于本人不定期会整理相关博文,会对相应内容作出完善.因此强烈建议 ...

最新文章

  1. 图论 ---- CF1209F. Koala and Notebook(多位数字拆边+BFS)
  2. 华为机试第10题python
  3. 发表学术论文必须做的十件事(下)
  4. 关于ewebeditor行距
  5. 【工具】更新云文档办公利器汇总,腾讯文档测试文件上传,云文档对比测试报告...
  6. (双指针、二分Binary Search) leetcode 658. Find K closest Elements
  7. 该系列主要整理收集在使用C#开发WinForm应用文章及相关代码来源于WinForms小组...
  8. mysql pk_mysql_1
  9. centos7 mysql5.6.34_CentOS7.0环境下MySQL5.6.34安装教程
  10. 【回文串2】LeetCode 9. Palindrome Number
  11. java 反编译 报错_java反编译后再编译成class时提示缺少包
  12. GIS专业书籍、文档、数据、网站、工具等干货
  13. 移远BC26使用总结
  14. JAVA计算机毕业设计疫情监测管理系统Mybatis+源码+数据库+lw文档+系统+调试部署
  15. mysql.bat启动关闭脚本
  16. Alictf2014 Writeup
  17. 从虚拟偶像到“网红”VUP,变现狂欢下的浮士德交易
  18. Linux设置串口波特率等参数
  19. 统计|两个总体方差比的区间估计(用公式计算)
  20. 转--2014年最新810多套android源码2.46GB免费一次性打包下载

热门文章

  1. 服务器常用陈列raid0,raid1,raid5,raid10(0+1)详解及区别
  2. Java8新特性_接口中的默认方法
  3. 论文都看不懂,你还搞什么人工智能?
  4. 《CCNA学习指南:数据中心(640-911)》——1.6 考试要点
  5. iOS9系列专题三——应用瘦身
  6. 11月女性时尚行业动态:浏览热度走势曲折 起伏大
  7. bash编程(一)之运算及比较
  8. Linux—图解rsyslog及通过 Loganalyzer实现集中式日志管控
  9. ios::sync_with_stdio(true);
  10. 2011年7月20日 14:32:41