C++ 获取具有文件名的额外字符
我正在使用CFileFind获取文件列表。我总是对一个特定的文件有问题。正在获取附加了额外字符“?”的文件标题 原名:_KO-Ennamo Yedho视频歌曲HD_测试.文本 检索名称:_KO-Ennamo Yedho视频歌曲HD_test?.txtC++ 获取具有文件名的额外字符,c++,visual-studio-2012,file-handling,cfilefind,C++,Visual Studio 2012,File Handling,Cfilefind,我正在使用CFileFind获取文件列表。我总是对一个特定的文件有问题。正在获取附加了额外字符“?”的文件标题 原名:_KO-Ennamo Yedho视频歌曲HD_测试.文本 检索名称:_KO-Ennamo Yedho视频歌曲HD_test?.txt CFileFind finder ; bool bWorking = finder.FindFile ("F:\\*.*") ; while (bWorking) { bWorking
CFileFind finder ;
bool bWorking = finder.FindFile ("F:\\*.*") ;
while (bWorking)
{
bWorking = finder.FindNextFile ( ) ;
CString file_lst =finder.GetFileTitle() ;
}
我也在命令提示符中检查了同样的问题。同样的问题也在发生。有人指导我哪里错了
原始文件名包含一些非打印Unicode字符。你需要在你的程序中使用宽(Unicode)字符串,而不是ANSI字符串。谢谢你,我将对此进行研究,同时澄清为什么我在cmd提示符中也会遇到同样的问题?cmd提示符是否未处理宽字符串?检查cmd提示符图像的链接。否,默认情况下,命令提示符不显示Unicode。它使用系统ANSI/多字节字符集。但是我正在使用多字节字符集编程如何使用多字节字符集和unicode获取unicode文件名称。这很简单。除了Unicode,再也不需要任何东西了。