3391|8

1

帖子

0

TA的资源

一粒金砂(初级)

楼主
 

基于vs8的智能设备工程中使用CFile类打开文件 [复制链接]

请问各位大侠,我在基于vs8的智能设备工程中使用CFile类打开文件时,发现打开不了文件,代码如下:
CFile file ;
CFileException ex;
BOOL bBool = file.Open( _T("123.txt"), CFile::modeRead, &ex);

if ( bBool == 0 )
{
        TCHAR szError[1024];
        ex.GetErrorMessage(szError, 1024);
        cout << "Couldn't open source file: ";
        cout << szError;

}
file.Close() ;

调试时,出现异常,提示无效路径,我的这个文件在工程的几乎所有位置都放了,并且我也尝试用绝对路径放进入还是不行。
另外我用FILE也试过了,仍然解决不了问题,文件始终打不开。
请问在智能设备工程下应该用什么方法操作文件呢?感谢各位了

最新回复

//取程序运行路径         CString strAppName = AfxGetAppName();         char strPath[MAX_PATH];         strAppName +=_T(".exe");         SearchPath( NULL, strAppName, NULL, MAX_PATH, strPath, NULL);         CString strWorkDir = strPath;         strAppName = _T("\")+strAppName;         int nStart = strWorkDir.Find( strAppName);         strWorkDir = strWorkDir.Left( nStart);复制代码  详情 回复 发表于 2009-11-6 00:41
点赞 关注

回复
举报

1

帖子

0

TA的资源

一粒金砂(初级)

沙发
 
改成“\\storage card\\123.txt” 程序仍提示如下:"\storage card\123.txt contains an invalid path.",我的123.txt应放在哪呢,请各位指明前方道路,呵呵
 
 

回复

1

帖子

0

TA的资源

一粒金砂(初级)

板凳
 
谢谢各位,终于搞出来了,需要设置模拟器的共享文件目录为我工程所在目录,然后用\\storage card\\123.txt就OK了
 
 
 

回复

4

帖子

0

TA的资源

一粒金砂(初级)

4
 
CE下,没有当前目录的概念
执行程序不会去查找它所在的目录,所以必须使用全路径
 
 
 

回复

1

帖子

0

TA的资源

一粒金砂(初级)

5
 
\\storage card\\123.txt
可以不可以
 
 
 

回复

2

帖子

0

TA的资源

一粒金砂(初级)

6
 
你的程序在什么地方运行?

模拟器?还是开发板?
 
 
 

回复

1

帖子

0

TA的资源

一粒金砂(初级)

7
 
谢谢各位热情帮助,我程序是在机子上的,还想请问下 模拟器和开发版是啥意思,呵呵,初学WINCE开发,我的是在机子上安装了WM 5.0,然后用这个模拟器启动的手机,不知道是不是叫模拟器上开发的呢?
 
 
 

回复

2

帖子

0

TA的资源

一粒金砂(初级)

8
 
引用 1 楼 trueman_onlyme 的回复:
\\storage card\\123.txt
可以不可以

如1楼说的,在板上运行要把程序和123.txt文件一起拷进去,程序应该没问题,123.txt放错位置了
 
 
 

回复

1

帖子

0

TA的资源

一粒金砂(初级)

9
 

  1. //取程序运行路径
  2.         CString strAppName = AfxGetAppName();
  3.         char strPath[MAX_PATH];
  4.         strAppName +=_T(".exe");
  5.         SearchPath( NULL, strAppName, NULL, MAX_PATH, strPath, NULL);
  6.         CString strWorkDir = strPath;
  7.         strAppName = _T("\")+strAppName;
  8.         int nStart = strWorkDir.Find( strAppName);
  9.         strWorkDir = strWorkDir.Left( nStart);
复制代码
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/8 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表