if(_access(file, 0)==0) printf("file exist\n";
今天有个朋友问我判断一个文件是否存在常用的有几种方法,大概总结一下常用的应该有四种方法吧,他们分别是:
1、_access函数
2、CreateFile函数
3、FindFirstFile函数
4、GetFileAttributes函数
一、使用_aceess函数:
使用_access函数判断文件是否存在是比较简单的方法,_access方法是在头文件<io.h>中的,在使用之前要加入这个头文件,现在来看一下_access函数的形式:
int _access( const char *path, int mode );
参数path:是所要判断状态的文件名。
参数mode:是判断文件状态的标志。
参数mode有以下几种形式:
00:表示判断文件是否存在
02:表示判断文件是否可写
04:表示判断文件是否可读
06:表示判断文件是否又可读又可写
好了,下面举一个小例子来看一下这个函数的使用,代码如下:
BOOL CMyFileDlg::CheckFile(char * file)
{
bool r = false;
if (_access(file, 0) != -1)
{
r = true;
}
return r;
}
这个例子虽然只是一个函数,但是已经把_access函数的用法表示的很明白了,关于可读,可写,既可读又可写形式与上类似。
二、使用CreateFile函数:
http://hi.baidu.com/programpad/blog/item/2d9df70f338606c27acbe15b.html
目录是否存在的检查:
BOOL FolderExist(CString strPath)
{
WIN32_FIND_DATA wfd;
BOOL rValue = FALSE;
HANDLE hFind = FindFirstFile(strPath, &wfd);
if ((hFind != INVALID_HANDLE_VALUE) && (wfd.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY))
{
rValue = TRUE;
}
FindClose(hFind);
return rValule;
}
文件存在性检查:
BOOL FileExist(CString strFileName)
{
CFileFind fFind;
return fFind.FindFile(strFileName);
}
创建目录:
BOOL CreateFolder(CString strPath)
{
SECURITY_ATTRIBUTES attrib;
attrib.bInheritHandle = FALSE;
attrib.lpSecurityDescriptor = NULL;
attrib.nLength =sizeof(SECURITY_ATTRIBUTES);
//上面定义的属性可以省略。 直接return ::CreateDirectory( path, NULL); 即可
return ::CreateDirectory( strPath, &attrib);
}
没有合适的资源?快使用搜索试试~ 我知道了~
vc判断一个文件是否存在
共113个文件
gif:43个
js:32个
htm:22个
5星 · 超过95%的资源 需积分: 16 243 下载量 67 浏览量
2010-08-12
13:06:52
上传
评论 1
收藏 435KB RAR 举报
温馨提示
压缩包里面的东西是关于用vc判断一个文件是否存在的一些东西,大家可以看一下
资源推荐
资源详情
资源评论
收起资源包目录
vc判断一个文件是否存在 (113个子文件)
rsscache(1).aspx 800B
rsscache(1).aspx 800B
rsscache.aspx 625B
rsscache.aspx 625B
ikqb.css 60KB
style_7_common.css 56KB
scriptstyle_7_viewthread.css 30KB
t5.css 22KB
t5.css 22KB
noavatar_2(2).gif 8KB
noavatar_2(10).gif 8KB
noavatar_2(7).gif 8KB
noavatar_2(1).gif 8KB
noavatar_2(11).gif 8KB
noavatar_2(8).gif 8KB
noavatar_2(9).gif 8KB
noavatar_2(3).gif 8KB
noavatar_2.gif 8KB
noavatar_2(5).gif 8KB
noavatar_2(6).gif 8KB
noavatar_2(4).gif 8KB
noavatar_2(1).gif 8KB
noavatar_2(4).gif 8KB
noavatar_2(2).gif 8KB
noavatar_2(3).gif 8KB
noavatar_2.gif 8KB
pic_logo.gif 5KB
pic_logo.gif 5KB
csdn_logo_blue.gif 2KB
csdn_logo_blue.gif 2KB
logo-zhidao.gif 2KB
home.gif 1KB
userinfo.gif 607B
new_reply.gif 580B
new_poll.gif 573B
new_topic.gif 565B
pips4.gif 437B
search2.gif 434B
search2.gif 434B
pips3.gif 396B
search1.gif 382B
search1.gif 382B
close.gif 325B
adminmail.gif 232B
icn_point.gif 199B
bg_menu_top.gif 197B
icon_wink.gif 170B
top.gif 91B
blank.gif 43B
blank(1).gif 43B
blank.gif 43B
blank(1).gif 43B
如何在vc中判断一个文件是否已经存在2 - VC-MFC - 基础类.htm 119KB
请教:在vc中如何判断一个文件是否存在 - C-C++ - ChinaUnix_net.htm 85KB
VC中,怎样判断一个文件是否存在 - VC-MFC - 基础类.htm 77KB
VC 怎样判断一个文件夹是否存在?_百度知道.htm 39KB
ad4.htm 5KB
ad4.htm 5KB
ReplyT.htm 5KB
ReplyT.htm 5KB
ad2.htm 3KB
ad2.htm 3KB
ad1.htm 2KB
ad1.htm 2KB
ad5.htm 867B
ad5.htm 867B
ad3.htm 482B
ad3.htm 482B
Feed(1).htm 235B
Feed(1).htm 235B
Feed.htm 200B
Feed.htm 200B
pv.htm 0B
pv.htm 0B
2_guangmingshizhe.jpg 4KB
2_zhangyiheng.jpg 4KB
2_jiangsheng.jpg 3KB
2_nola.jpg 3KB
2_qiulg.jpg 2KB
2_xuzheng318.jpg 2KB
common.js 58KB
pingan_270.js 52KB
show_ads.js 50KB
show_ads.js 50KB
t5.js 45KB
t5.js 45KB
userlogin.js 39KB
urchin.js 22KB
urchin.js 22KB
CsdnScriptWorkshop.js 21KB
CsdnScriptWorkshop.js 21KB
ucard.js 18KB
kejikuaibao.js 11KB
viewthread.js 10KB
counter.js 5KB
counter.js 5KB
pv.js 4KB
fhHYTag.js 4KB
publib_footer.js 2KB
publib_footer.js 2KB
共 113 条
- 1
- 2
BianChengNan-BCN-BCN
- 粉丝: 43
- 资源: 49
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 功率拓扑快速参考指南-ti,TI官方出品
- 开关电源拓朴图表,各种电路拓扑表格
- 登录和注册 前端:vue3+iview plus +axios 后台:spring boot +mybatis
- 软件测试入门简介:从基础到实践的全面介绍
- 2024CDA Level Ⅰ 认证考试大纲
- YOLO 数据集:淋巴病灶检测(1类别,包含训练集、验证集)
- 基于AT91RM9200处理器+XC3S250E(FPGA)+AD5322采集板Cadence ORCAD(硬件原理图+PCB)
- java+vue2实现zebra打印机,js实现
- J-link烧录软件,用于hex文件烧录
- VB打开时间同步页面/Internet时间设置.vbs
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
- 1
- 2
- 3
- 4
前往页