求助读中文名的文件

tkl90 2011-09-22 03:25:57
void Menu_6_List_Mp3(helloworld *pMe)
{

AECHAR *szBuf;
uint16 wItemID = 0;

// char *pFileName = NULL;//9.22上午添加
//AEEFileInfoEx fi = {0};//9.22上午添加

CtlAddItem pai;
ISHELL_CreateInstance(pMe->a.m_pIShell,
AEECLSID_MEDIAMP3,
(void **)&pMe->pPlayMp3);
pMe->pmd.clsData = MMD_FILE_NAME;
// Enumerate all music files and add them to menu
szBuf = MALLOC(MAX_FILE_NAME * sizeof(AECHAR));

if (ISHELL_CreateInstance(pMe->a.m_pIShell,
AEECLSID_FILEMGR,
(void **)&pMe->pIFileMgr)){
FREE(szBuf);
}

//选择文件夹目录
if (selFileType == 0){
IFILEMGR_EnumInit(pMe->pIFileMgr, MP_MP3_DIR, FALSE);
}else if(selFileType == 1){
IFILEMGR_EnumInit(pMe->pIFileMgr, MP_LRC_DIR, FALSE);
}
if(ISHELL_CreateInstance(pMe->a.m_pIShell,
AEECLSID_MENUCTL,
(void**)&pMe->pMenuMp3) != SUCCESS)
return ;

pai.pText = NULL;
pai.pImage = NULL;
pai.wFont = AEE_FONT_BOLD;
pai.dwData = NULL;

pai.pszResImage = NULL;
pai.pszResText = NULL;
pai.wImage = NULL;
while (wItemID < MP_MAX_FILES &&
IFILEMGR_EnumNext(pMe->pIFileMgr, &pMe->fi))
{
//添加菜单项
char *szName = NULL;
pMe->m_NumFiles = wItemID;
//剔除后缀名不是MP3的文件
if (STRENDS( ".mp3", pMe->fi.szName) || STRENDS(".lrc",pMe->fi.szName))
{

szName = Menu_6_GetName(pMe->fi.szName);
STRTOWSTR(szName, szBuf, MAX_FILE_NAME);
pai.pText = szBuf;
//pai.pText = szName;
pai.wItemID = (uint16)(wItemID);
IMENUCTL_AddItemEx(pMe->pMenuMp3, &pai);
}
wItemID++;

FREE(szName);
}
{
AEERect rect;

SETAEERECT(&rect, 0, 0, pMe->DeviceInfo.cxScreen, pMe->DeviceInfo.cyScreen + 5);
IMENUCTL_SetRect(pMe->pMenuMp3, &rect);
IMENUCTL_SetActive(pMe->pMenuMp3,TRUE);
IMENUCTL_Redraw(pMe->pMenuMp3);

}
IMENUCTL_SetActive(pMe->pMenuMp3,TRUE);
pMe->status = STATUS_MENU_6_MP3_LIST;
FREE(szBuf);
}

static char * Menu_6_GetName(const char * psz)
{
char *pszName = NULL;
if (psz== NULL)
return NULL;

pszName = STRRCHR(psz, (int)DIRECTORY_CHAR);
if (pszName != NULL)
pszName++;
else
pszName = (char*)psz;
return pszName;
}


我想问下 为啥我不能读中文文档,通过debug查看,根本就不枚举中文文档(大写英文也一样)。

急求!
灰常感谢!

...全文
2021 4 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
tkl90 2011-09-24
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 sxcnfly 的回复:]

你在windows下保存的文件名默认是gbk编码的,你只能通过自己写程序来把文件名转换为utf-8的。
[/Quote]

能否指导下如何转化?通过查码表吗?
谢谢了
tkl90 2011-09-23
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 sxcnfly 的回复:]

路径前不加fs:/会把大写自动转换为小写,中文必须是utf-8。
[/Quote]

中文名如何转化成UTF-8了?
谢谢了。
sxcnfly 2011-09-23
  • 打赏
  • 举报
回复
你在windows下保存的文件名默认是gbk编码的,你只能通过自己写程序来把文件名转换为utf-8的。
sxcnfly 2011-09-22
  • 打赏
  • 举报
回复
路径前不加fs:/会把大写自动转换为小写,中文必须是utf-8。

4,847

社区成员

发帖
与我相关
我的任务
社区描述
本论坛以AI、WoS 、XR、IoT、Auto、生成式AI等核心板块组成,为开发者提供便捷及高效的学习和交流平台。 高通开发者专区主页:https://qualcomm.csdn.net/
人工智能物联网机器学习 技术论坛(原bbs) 北京·东城区
社区管理员
  • csdnsqst0050
  • chipseeker
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧