CString文件路径 使用fopen打开
2010-12-01 00:28
211 查看
一般文件都是通过文件打开对话框获得的,文件路径是CSTring类型。有些人比较钟爱C语言的File格式,因此希望使用fopen函数,而该函数的第一个参数(文件路径)是char *类型的,故没法直接使用cstring类型。如果将cstring转成char *貌似也不行,因为cstring中隐藏了一些特殊字符的转义,如‘/’,这样在转换后的char *里没法识别文件路径。本人尝试通过在每个‘/’之后再添加一个'/',然而由于文件路径中有中文字符,处理起来比较麻烦,没有成功~最后通过以下方法完美解决:
使用 _tfopen函数
CFileDialog dlg(TRUE,NULL,NULL,OFN_HIDEREADONLY|OFN_OVERWRITEPROMPT,_T("All Files (*.*)|*.*||"),NULL);
CString str;
if(dlg.DoModal() == IDOK)
str=dlg.GetPathName();
else
return;
File *fp= _tfopen(str,_T("r")));
纠结了一天多,总算解决~~
使用 _tfopen函数
CFileDialog dlg(TRUE,NULL,NULL,OFN_HIDEREADONLY|OFN_OVERWRITEPROMPT,_T("All Files (*.*)|*.*||"),NULL);
CString str;
if(dlg.DoModal() == IDOK)
str=dlg.GetPathName();
else
return;
File *fp= _tfopen(str,_T("r")));
纠结了一天多,总算解决~~
相关文章推荐
- CString文件路径 使用fopen打开
- CString文件路径 使用fopen打开
- 使用fopen打开路径下的文件
- CrossApp开发时, 存放在Resource下的文件在android环境下使用assets/..路径 使用C++的文件操作类如(fopen、ifstream等)找不到的问题
- Java使用Runtime.exec无法打开路径带空格的文件(报错)的解决办法
- 当用fopen读写打开文件时,请使用r+,而不是rw
- fopen打开相对路径的文件
- PHP下使用fopen函数打开文件时的几点注意
- 使用CFileDialog取得文件路径,然后用CFile打开的
- fopen打开文件时,路径中包含中文
- Microsoft Excel 不能访问文件“ 文件名称或路径不存在。 • 文件正被其他程序使用。 • 您正要保存的工作簿与当前打开的工作簿同名。
- Qt、Vc下用fopen打开中文名字的文件(转换成Unicode后,使用_wfopen函数)
- windows系统下C语言fopen打开文件路径介绍
- Microsoft Excel 不能访问文件“ 文件名称或路径不存在。 • 文件正被其他程序使用。 • 您正要保存的工作簿与当前打开的工作簿同名。
- 使用Profile文件记录JFileChooser(或者File控件)最新打开的文件路径
- Microsoft Excel 不能访问文件“ 文件名称或路径不存在。 • 文件正被其他程序使用。 • 您正要保存的工作簿与当前打开的工作簿同名。
- fopen打开相对路径的文件
- PHP使用fopen()函数打开文件提示权限不够问题
- php 使用fopen函数创建、打开文件详解及实例代码
- java使用dos命令打开路径中含有空格的文件