社区
高通开发者论坛
帖子详情
怎么读取中文档名呀
clubnekol
2009-07-27 05:15:34
AEEFileInfoEx fileInfoEx;
IFileMgr *piFileMgr;
我使用IFILEMGR_EnumInit、IFILEMGR_EnumNextEx(piFileMgr, &fileInfoEx)来取得文件名称
如果档名是英文,没有目题
如果是中文的话,就变成乱码了
我试过了STRTOWSTR、UTF8TOWSTR、STREXPAND,还是没有办法正常显示中文
请高手指点一下呀
...全文
1996
13
打赏
收藏
怎么读取中文档名呀
AEEFileInfoEx fileInfoEx; IFileMgr *piFileMgr; 我使用IFILEMGR_EnumInit、IFILEMGR_EnumNextEx(piFileMgr, &fileInfoEx)来取得文件名称 如果档名是英文,没有目题 如果是中文的话,就变成乱码了 我试过了STRTOWSTR、UTF8TOWSTR、STREXPAND,还是没有办法正常显示中文 请高手指点一下呀
复制链接
扫一扫
分享
举报
写回复
配置赞助广告
用AI写文章
13 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
clubnekol
2009-08-03
打赏
举报
回复
很實用的代碼!thx
tx040316
2009-07-31
打赏
举报
回复
char* UTFToChar(IFile* FileHandle, uint16 CharLength)
//FileHandle是要读的文件句柄,CharLength是UTF文件名的长度,就是UTF字符串的前16位,
{
byte* UTFData=NULL;
uint16 Lenght=0;
int charsize=0;
AECHAR* TempWchar=NULL;
char* pOutChar=NULL;
UTFData=(byte*)MALLOC(CharLength*sizeof(byte));
TempWchar=(AECHAR*)MALLOC((CharLength*3)*sizeof(AECHAR));
IFILE_Read(FileHandle, UTFData, CharLength*sizeof(byte));
UTF8TOWSTR(UTFData, CharLength, TempWchar, (CharLength*3));
charsize=WSTRLEN(TempWchar);
pOutChar=(char*)MALLOC((charsize+1)*sizeof(char));
pOutChar=WSTRTOSTR(TempWchar, pOutChar, (charsize+1));
FREE(UTFData);
UTFData=NULL;
FREE(TempWchar);
TempWchar=NULL;
return pOutChar;
}
这是我以前写的UTF转为char的程序,从一个文件中读取一个UTF8的文件名,再转换为BREW里面的char。
xia56108430
2009-07-30
打赏
举报
回复
哦!
明白了!
谢谢!
clubnekol
2009-07-30
打赏
举报
回复
我所说的initialize是指你要指定一些初始值
例如...
fileInfoEx.nStructSize = sizeof(AEEFileInfoEx);
fileInfoEx.pszFile = FNameInfo;
fileInfoEx.nMaxFile = sizeof(FNameInfo);
fileInfoEx.pszDescription = 初始值;
fileInfoEx.nDescriptionSize = 初始值;
fileInfoEx.pClasses = 初始值;
fileInfoEx.nClassesSize = 初始值;
xia56108430
2009-07-30
打赏
举报
回复
错了!
我刚刚又试了其他东西,没改过来!,
那句应该这样SUCCESS == IFILEMGR_EnumInit( pMe->filemgr,dir->newdir,false )
xia56108430
2009-07-30
打赏
举报
回复
我的那段粘来来给你看看吧!
这个AEEFILEinfoex我new了!
if (SUCCESS==ISHELL_CreateInstance(pMe->a.m_pIShell,AEECLSID_FILEMGR,(void **)(&(pMe->filemgr))))
{
pMe->m_pLink=ILINK_Init();
AEEFileInfoEx *info;
info=new AEEFileInfoEx;
if ( SUCCESS == IFILEMGR_EnumInit( pMe->filemgr,dir->newdir,TRUE ) )
{
while ( IFILEMGR_EnumNextEx( pMe->filemgr, info) ==TRUE)
{
DBGPRINTF("%s",info->pszFile);
if ( STRENDS( ".mp3", info->pszFile) )
{
ILINK_AddNode(pMe->m_pLink,INODE_Init(info->pszFile));
}
}
}
FREE(info);
FREE(dirtem);
}
clubnekol
2009-07-30
打赏
举报
回复
result += IFILEMGR_EnumInit(piFileMgr, AEEFS_CARD0_DIR, FALSE);
while (result && IFILEMGR_EnumNextEx(piFileMgr, &fileInfoEx))
{
//do something
}
基本上使用IFILEMGR_EnumNext就行了,要使用IFILEMGR_EnumNextEx的话
那你要先initialize AEEFileInfoEx,即fileInfoEx
xia56108430
2009-07-30
打赏
举报
回复
那段代码能不能粘上来看看,!
对比下,为什么不可以了!
clubnekol
2009-07-30
打赏
举报
回复
返回是正常的,但在螢幕上看到的是亂碼或空白
我是在Device上測試,不是在simulator上
若文件名的編碼格式是UTF8,採用UTF8TOWSTR即可
xia56108430
2009-07-30
打赏
举报
回复
抱歉,我使用的IFILEMGR_EnumNext,
使用IFILEMGR_EnumNextEx,返回的是FALSE?
你那也一直是这样的吗?
xia56108430
2009-07-30
打赏
举报
回复
试过,
含有中文,和大写英文的文件都不行
不是读不出来,IFILEMGR_EnumNextEx,根本就读取不到上面两种文件名的文件
fileinfo就没有谢谢文件信息!
brew2003
2009-07-29
打赏
举报
回复
据说文件名要用UTF8的格式。
半吊子全栈工匠
2009-07-27
打赏
举报
回复
注意文件名的编码格式
python
读取
word
文档
(csdn)————程序.pdf
python
读取
word
文档
(csdn)————程序
Java解析apk/ipa
读取
包
名
、版本
名
、版本号等等信息源码
Java解析apk/ipa
读取
包
名
、版本
名
、版本号等等信息源码,自己总结,希望对大家有所帮助。
Python3
读取
Word文件方式
今天小编就为大家分享一篇Python3
读取
Word文件方式,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
读取
数据库
名
,表
名
,列
名
的小程序
这个用C#写得小程序,主要用来
读取
SQL Several 2005里的数据库(用户数据库),然后在此基础上得到这个数据库上的表
名
,最后通过表
名
列出所有的列
名
~
CVI2013
读取
XML文件的完整工程文件
网上介绍CVI
读取
XML文件的内容极少,而且都是需要积分下载的简化
文档
,对于需要研究的人没有用处,为此写了个完整的
读取
XML文件的工程。可以根据
文档
名
中
间的某个元素
名
,直接读出该元素的所有属性。CVI
读取
XML的方式和C#等面向对象的语言有所区别,大家特别需要注意。
高通开发者论坛
7,908
社区成员
6,500
社区内容
发帖
与我相关
我的任务
高通开发者论坛
本论坛以AI、IoT、PC 、XR、Auto等核心板块组成,为开发者提供便捷及高效的学习和交流平台。 高通开发者专区主页:https://qualcomm.csdn.net/
复制链接
扫一扫
分享
社区描述
本论坛以AI、IoT、PC 、XR、Auto等核心板块组成,为开发者提供便捷及高效的学习和交流平台。 高通开发者专区主页:https://qualcomm.csdn.net/
物联网
人工智能
开源
企业社区
北京·东城区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章