加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

ifstream 读取文件路径问题

(2011-06-01 17:21:31)
标签:

杂谈

分类: Cplusplus

最近在编写一个MFC单文档程序,需要读入多个文件,在工程目录下建一文件夹document,将要读入文件放在里面。利用ifstream读取文件时时需要给出绝对路径才能读到,但使用绝对路径移植性很差,为了获取文件的存放路径,采用如下办法:

 

 TCHAR buf[MAX_PATH + 1];
 CString strtemp,strfilePath;

//首先获得应用程序exe文件路径
 ::GetModuleFileName(NULL,buf,sizeof(buf));
 strtemp=buf;

//找到debug或release所在路径
 int m=strtemp.ReverseFind('\\');
 if (m != -1)
  strtemp=strtemp.Left(m);

//在往上一级,工程文件所在路径
 m=strtemp.ReverseFind('\\');
 if (m != -1)
  strtemp=strtemp.Left(m);
 strfilePath = strtemp+_T("\\document\\文件");

 

CString::ReverseFind int ReverseFind( TCHAR ch ) const;

返回此CString对象中与要求的字符匹配的最后一个字符的索引;如果没有找到需要的字符则返回-1.

 

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有