VC获取文件大小!

C++计算文件和文件夹的大小(附源码) 计算文件和文件夹的大小 阅读详情
方法一:

WIN32_FIND_DATA fileInfo;
HANDLE hFind;
DWORD fileSize;
const char *fileName = 文件的路径及名字;
hFind = FindFirstFile(fileName ,&fileInfo);
if(hFind != INVALID_HANDLE_VALUE)
fileSize = fileInfo.nFileSizeLow;
FindClose(hFind);

方法二:

HANDLE hFile; // the file handle
DWORD dwFileSize; // temporary storage for file sizes

// Create the test file. Open it "Create Always" to overwrite any
// existing file. The data is re-created below.
hFile = CreateFile(lpcTheFile, GENERIC_READ | GENERIC_WRITE, 0, NULL,
CREATE_ALWAYS, FILE_ATTRIBUTE_NORMAL, NULL);

if (hFile == INVALID_HANDLE_VALUE) {
printf("hFile is NULL\n");
return 4;
}
dwFileSize = GetFileSize(hFile, NULL);
printf("hFile size: %10d\n", dwFileSize);

 

C和C++获取文件大小的方法总结
2008年03月31日 星期一 14:21

 

1.MFC中的方法:(C++)

CFileStatus status;
CFile::GetStatus("D:\\test.txt",status);
long lSizeOfFile;
lSizeOfFile = status.m_size;

lSizeOfFile的值就是D:\\test.txt文件的大小

2.标准C获得文件大小的5种方法
(注意:"__FILE__"指的是当前文件,你可以改为有效路径的目标文件,比如"D:\\test.txt")
#include "stdafx.h"
#include "stdio.h"
#include <sys/stat.h>
#include <io.h>
#include <FCNTL.H>


int getfilesize()
{
    int iresult;
    struct _stat buf;
    iresult = _stat(__FILE__,&buf);
    if(iresult == 0)
    {
        return buf.st_size;
    }
    return NULL;
}

int getfilesize01()
{
    int fp;
    fp=_open(__FILE__,_O_RDONLY);
    if(fp==-1)
        return NULL;
    return _filelength(fp);
    //return NULL;
}

int getfilesize02()
{
    int fp;
    fp=_open(__FILE__,_O_RDONLY);
    if(fp==-1)
        return NULL;
    return _lseek(fp,0,SEEK_END);
    //return NULL;
}

int getfilesize03()
{
    int fp;
    fp=_open(__FILE__,_O_RDONLY);
    if(fp==-1)
        return NULL;
    return _lseek(fp,0,SEEK_END);
    //return NULL;
}

int getfilesize04()
{
    FILE *fp;
    if((fp=fopen(__FILE__,"r"))==NULL)
        return 0;
    fseek(fp,0,SEEK_END);
    return ftell(fp);    //return NULL;
}

int getfilesize05()
{
    FILE *fp;
    char str[1];
    if((fp=fopen(__FILE__,"rb"))==NULL)
        return 0;
    for(int i = 0;!feof(fp);i++)
    {
        fread(&str,1,1,fp);
       
    }
    return i - 1;    //return NULL;
}

int main(int argc, char* argv[])
{
   
    printf("getfilesize()=%d\n",getfilesize());
    printf("getfilesize01()=%d\n",getfilesize01());
    printf("getfilesize02()=%d\n",getfilesize02());
    printf("getfilesize03()=%d\n",getfilesize03());
    printf("getfilesize04()=%d\n",getfilesize04());
    printf("getfilesize05()=%d\n",getfilesize05());
    return 0;
}

VC++用于获取文件大小的四种方法 VC++用于获取文件大小的四种方法,很齐全哟~ 立即下载

相关推荐

深入NAND Flash信号与接口:结合ONFI 5.0协议,聊聊DBI、ODT和差分信号到底在解决什么实际问题

本文深入探讨了NAND Flash信号与接口设计,结合ONFI 5.0协议,详细解析了DBI、ODT和差分信号等技术如何解决高速数据传输中的信号完整性问题。通过实际案例和数据,展示了这些技术在降低功耗、减少噪声和提升抗干扰能力方面的显著效果,为存储工程师提供了宝贵的实践参考。

weixin_33736649的博客 344

VC 获取文件大小方法集锦

VC 获取文件大小方法集锦 方法一: WIN32_FIND_DATA fileInfo; HANDLE hFind; DWORD fileSize; const char *fileName = 文件的路径及名字; hFind = FindFi

千里之外 846

DDR核心机制解析:从Burst到Prefetch的性能跃迁

本文深入解析了DDR内存性能跃迁的核心机制,重点阐述了Burst(突发传输)与Prefetch(预取)技术的协同工作原理。Burst机制通过连续传输数据减少访问延迟,而Prefetch则通过内部预取数据提升吞吐量,两者结合完美匹配现代CPU缓存行需求,是DDR3等内存实现高效带宽的关键。

weixin_29232121的博客 135

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

#include #include #include #include using namespace std; void main() { char *filepath = "C:\\1.txt"; //方法一 HANDLE handle = CreateFile(filepath, FILE_READ_EA, FILE_SHARE_

劉俊的专栏 2万+

什么是以太网链路聚合

以太网链路聚合技术通过将多个物理端口捆绑成逻辑端口,可显著提升网络性能。该技术能增加总带宽(各链路带宽之和)、提高可靠性(故障秒级切换)并实现智能负载分担。主要分为手工模式和基于LACP协议的动态模式,后者能检测链路故障更可靠。配置时需确保接口参数一致、模式匹配,适用于核心交换、服务器接入等场景。华为设备通过创建Eth-Trunk接口、指定LACP模式并添加成员接口即可完成部署。这项成熟技术能以低成本解决带宽瓶颈和可靠性问题,是构建高速稳定网络的关键方案。

lai_2020的博客 675

别再手动找触点了!EPLAN线圈触点映像的3种显示方式与F键/Ctrl+B快捷键实战

本文详细解析EPLAN线圈触点映像的3种显示方式与F键/Ctrl+B快捷键实战技巧,帮助电气设计工程师提升图纸操作效率。通过精简编号、路径栏显示和元件旁可视化三种模式的应用场景对比,结合快捷键肌肉记忆训练法,实现触点快速定位与管理,大幅减少手动查找时间。

weixin_42522964的博客 481

c++获取文件大小的几种方式

获取文件大小的几种方式

wyw0000的博客 4170

Fluent温度超限调试:从能量方程到网格优化的实战指南

本文深入解析Fluent中温度超限问题的诊断与解决方法,从能量方程机制到网格优化策略,提供实战指南。通过分析温度与焓的换算关系,探讨典型场景如能量方程发散、局部网格质量差等,并给出五步调试法及高级命令应用,帮助工程师有效解决温度计算异常问题。

weixin_29045585的博客 531

VC中获取文件大小

VC获取文件大小! 2008-12-12 08:46 http://hi.baidu.com/vcmfc/blog/item/c8cd58f4ec90d568dcc47446.html 我查到两种方法: 方法一:  WIN32_FIND_DATA fileInfo;  HANDLE hFind;  DWORD fileSize;  const char

天上的猩猩的专栏 5142

泛微Ecology流程数据表结构解析:workflow_requestbase和workflow_currentoperator到底怎么关联查询?

本文深入解析泛微Ecology系统中workflow_requestbase和workflow_currentoperator表的结构与关联机制,提供SQL查询语句示例,帮助开发者高效查询流程数据。涵盖待办事项、已办事项、办结事项和流程监控等典型场景,并分享性能优化技巧和常见问题排查指南。

weixin_33738555的博客 815

uniapp 如何封装实现任意页面都能使用的全局弹窗

项目内容场景全局监听消息提示难点uniapp 无法全局挂载组件解决方案动态创建 DOM + 动态 Vue 实例优势跨页面 / 不依赖页面组件树 / 灵活调用如果你使用的是小程序平台,DOM 操作可能受限,需要用或方式兼容处理。想支持多个弹窗堆叠?你可以扩展,加个弹窗队列管理器。

代码简单说 Vue、JAVA、PHP、Node.js 熟练运用,接口、架构、性能全搞定。 945

VC获取文件大小的一些问题

VC获取文件大小的一些问题 vc获取文件大小的方式太多了,这里不举例说明了。我说说我遇到的一个小问题,功能是统计一个文件的大小,通常做法如下: CFile file; if(file.Open(_T("test.doc"),CFile::modeRead)) DWORD fileSize = file.GetLength(); file.Close(); 这时如果该文件

zyw_anquan的专栏 1470

数学建模算法案例精讲500篇-【深度强化学习】深度确定性策略梯度(DDPG)(附MATLAB和python代码实现)

它是一种学习连续动作的无模型策略算法。它结合了DPG(确定性策略梯度)和DQN(深度Q网络)的思想。它利用DQN中的经验重放和延迟更新的目标网络,并基于DPG,可以在连续的动作空间上运行。# 用于生成带有噪声的动作def __init__(self, action_space, mu=0.0, theta = 0.15, max_sigma = 0.3, min_sigma = 0.3, decay_period = 100000):#decay_period要根据迭代次数合理设置# 均值 mu。

qq_36130719的博客 325

VC获取文件大小的方法

VC获取文件大小的方法(转)   前几天在工作中需要写一段代码,获取一些视频文件的大小,心想:这还不简单吗?直接用标准C 的文件操作函数就OK了。于是写了下面的一段代码来实现: unsigned long get_file_size(const char *filename) { unsigned long size; FILE* fp = fopen( file

pjl1119的专栏 1686

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

通过winapi获取文件大小

通过winapi获取文件大小 编者:李国帅 qq:9611153 微信lgs9611153 时间:2010-7-12 背景原因: 获取文件大小有多种方式,这里介绍一种通过GetFileAttributesEx函数获取文件大小的方法。   所需资源: 在vc中进行测试。   解决方案: long  getFileSize(const wchar_t * filename...

lgs7907 1955

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

VC获取文件大小

VC获取文件大小! 2008-12-12 08:46 http://hi.baidu.com/vcmfc/blog/item/c8cd58f4ec90d568dcc47446.html 我查到两种方法: 方法一:  WIN32_FIND_DATA fileInfo;  HANDLE hFind;  DWORD fileSize;  const cha

eldn__的专栏 982

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

获取文件大小

获取文件大小,使用到_stat结构体,用_stat函数取得数据。struct _stat ST; _stat("C://xxx.iso", &ST); ST.st_size 为文件大小(Byte)。当文件超过4GB时,char filesize[20] = {0};struct _stati64 ST;::_stati64("C://xxx.iso", &ST);_i64t

677

VC++获取文件大小集锦

方法一: WIN32_FIND_DATA fileInfo; HANDLE hFind; DWORD fileSize; const char *fileName = 文件的路径及名字; hFind = FindFirstFile(fileName ,&fileInfo); if(hFind != INVALID_HANDLE_VALUE) fileSize = file...

enjoy.day 1135

获取文件大小的各种方法

<br />(一)<br /> <br />对文件操作时有时获得文件的大小时必要的.下面是获得其大小小的较简单方法.<br />#include<io.h>   //C语言头文件<br />#include<iostream>   //for system();<br />using namespace std;<br />int main()<br />{<br />  int handle;<br />  handle = open("test.txt", 0x0100); //open file fo

黯の夜的专栏 1367
上一篇: malloc申请大内存报错分析
下一篇: 阻塞调用ShellExecute函数
AstrayLinux
博客等级 码龄15年 55粉丝 38原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值