用fopen判断文件和文件夹的一种方法

用fopen判断文件和文件夹的一种方法

作者: simon_dong618
来源:http://blog.csdn.net/simon_dong618/archive/2008/04/01/2238633.aspx

前段时间做项目的时候,需要写一段代码判断一个目录下的文件和文件夹,在网上搜了很多这方面的介绍,都没有比较满意的,后来在一次调试程序的过程中偶尔发现了fopen函数在特殊的情况下可以起到判断的作用,所以特别记录下来,以飨大家:

FILE *fp=fopen(filename, "r+w");

 /*在打开文件时,必须要加入写(w)的方式。同时filename必须是一个存在的文件或文件夹,如果是一个不存在的文件或文件夹,则后面的判断是不正确的。*/

if(!fp) /*如果打开失败,则为文件夹*/

{

...........

}

else /*如果打开成功,则为文件*/

{

............

}

fclose(fp);

至于为什么用fopen以这样的方式打开文件夹时会失败,目前还没有搞清楚,如果有高手知道,请给一个详细的说明吧。

另外,这段代码的有效性在我的项目中已经经过测试验证过,但是并不能保证它在任何情况下都没有问题,所以,如果你要按照这个方法来对文件和文件夹做判断,最好是事先全面的测试验证一下。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值