2007年9月20日星期四

利用c++标准库函数实现判断文件存在 CSDN Blog推出文章指数概念,文章指数是对Blog文章综合评分后推算出的,综合评分项分别是该文章的点击量,回复次数,被网摘收录数量,文章长度和文章类型;满分100,每月更新一次。

利用c++标准库函数实现判断文件存在 CSDN Blog推出文章指数概念,文章指数是对Blog文章综合评分后推算出的,综合评分项分别是该文章的点击量,回复次数,被网摘收录数量,文章长度和文章类型;满分100,每月更新一次。
在c++标准库函数中,没有直接判断文件存不存在的函数。而为了这一个小小的功能要实现操作系统代码分开很是划不来。
在偶然的机会中,发现了一个很简单的好方法可以实现这个功能。只利用标准库函数而不用写操作系统相关代码。
在c++标准库中,有一个文件操作函数,rename用于文件改名,其位于cstdio中。rename接受new,old两个char*参数,返回改名操作结果。我们可以利用改名功能,将其两个参数都设置成要判断的文件名,而返回值可能会是我们需要的结果。
rename返回0表示正常,返回非0表示有错误。而这样实现的exist函数,同样,返回0表示存在,非0表示不存在。还可以根据需要,将0所对应结果反过来。
最后的实现就是return !rename(filename, filename)。

Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=916628

没有评论: