C/C++多种方法获取文件大小(转)
源码下载:点击下载
源码如下:
![](/assets/blank.gif)
#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);
}
}
![](/assets/blank.gif)
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++多种方法获取文件大小(转)相关推荐
- VC C/C++ 4种方法获取文件大小 Windows API
#include <iostream> #include <windows.h> #include <io.h> #include <sys\stat.h&g ...
- Java 获取文件大小
Java 获取文件大小 本文介绍几种方法获取文件大小,分别是java io 和 nio 以及第三方库实现. 标准的java io 首先开始一个简单实例计算文件大小,使用File.lenght()方法: ...
- 【转】Java中获取文件大小的正确方法
[转]Java中获取文件大小的正确方法 本文出处:http://blog.csdn.net/chaijunkun/article/details/22387305,转载请注明.由于本人不定期会整理相关 ...
- php study 直接显示代码_PHP获取文件大小的方法详解(附视频)
本篇文章主要给大家介绍PHP获取文件大小以及封装获取正常大小的具体方法. 对于初入门的PHP新手来说,PHP获取文件大小这个功能实现,或许有一定的难度.但是相信新手小白们在看过本篇文章介绍后,一定能轻 ...
- 编写测试:VC下获取文件大小的4种方法
代码参考自lailx的博客:获取文件大小的4种方法(http://www.cnblogs.com/lailx/archive/2011/11/20/2256550.html) 1 // TestGet ...
- php js获取文件大小,js+ajax实现获取文件大小的方法_javascript技巧
本文实例讲述了js+ajax实现获取文件大小的方法.分享给大家供大家参考,具体如下: 顾名思义,通过JS和Ajax来获取上传文件的大小,在上传之前可以有个判断,对上传的文件有所控制,因为js控制文件大 ...
- java中如何设置浏览器宽度_[Java教程]关于JS中获取浏览器高度和宽度值的多种方法(多浏览器)_星空网...
关于JS中获取浏览器高度和宽度值的多种方法(多浏览器) 2017-08-07 0 三种浏览器获取值方法 IE中: document.body.clientWidth ==> BODY对象宽度 d ...
- java中比较两个文件的大小_Java实现获取文件大小的几种方法
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 目前Java获取文件大小的方法有两种: 1.通过file的length()方法获取: 2.通过流式方法获取: 通过流式方法又有两种,分别是旧的java.i ...
- Java中获取文件大小的正确方法
本文出处:http://blog.csdn.net/chaijunkun/article/details/22387305,转载请注明.由于本人不定期会整理相关博文,会对相应内容作出完善.因此强烈建议 ...
最新文章
- 图论 ---- CF1209F. Koala and Notebook(多位数字拆边+BFS)
- 华为机试第10题python
- 发表学术论文必须做的十件事(下)
- 关于ewebeditor行距
- 【工具】更新云文档办公利器汇总,腾讯文档测试文件上传,云文档对比测试报告...
- (双指针、二分Binary Search) leetcode 658. Find K closest Elements
- 该系列主要整理收集在使用C#开发WinForm应用文章及相关代码来源于WinForms小组...
- mysql pk_mysql_1
- centos7 mysql5.6.34_CentOS7.0环境下MySQL5.6.34安装教程
- 【回文串2】LeetCode 9. Palindrome Number
- java 反编译 报错_java反编译后再编译成class时提示缺少包
- GIS专业书籍、文档、数据、网站、工具等干货
- 移远BC26使用总结
- JAVA计算机毕业设计疫情监测管理系统Mybatis+源码+数据库+lw文档+系统+调试部署
- mysql.bat启动关闭脚本
- Alictf2014 Writeup
- 从虚拟偶像到“网红”VUP,变现狂欢下的浮士德交易
- Linux设置串口波特率等参数
- 统计|两个总体方差比的区间估计(用公式计算)
- 转--2014年最新810多套android源码2.46GB免费一次性打包下载
热门文章
- 服务器常用陈列raid0,raid1,raid5,raid10(0+1)详解及区别
- Java8新特性_接口中的默认方法
- 论文都看不懂,你还搞什么人工智能?
- 《CCNA学习指南:数据中心(640-911)》——1.6 考试要点
- iOS9系列专题三——应用瘦身
- 11月女性时尚行业动态:浏览热度走势曲折 起伏大
- bash编程(一)之运算及比较
- Linux—图解rsyslog及通过 Loganalyzer实现集中式日志管控
- ios::sync_with_stdio(true);
- 2011年7月20日 14:32:41