Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2012/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 获取具有文件名的额外字符_C++_Visual Studio 2012_File Handling_Cfilefind - Fatal编程技术网

C++ 获取具有文件名的额外字符

C++ 获取具有文件名的额外字符,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获取文件列表。我总是对一个特定的文件有问题。正在获取附加了额外字符“?”的文件标题

原名:_KO-Ennamo Yedho视频歌曲HD_测试‏.文本

检索名称:_KO-Ennamo Yedho视频歌曲HD_test?.txt

   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,再也不需要任何东西了。