wcstombs奇怪的行为

时间:2013-11-26 09:36:10

标签: c++ string visual-studio unicode

出于某种原因,wcstombs从fileName.My VS项目中第一次出现的俄语命名文件夹中删除了所有内容。

这是我的代码:

bool func( const TCHAR* fileName)
{
    #ifdef _UNICODE
        char path[MAX_PATH];
        wcstombs(path, fileName, ARRAYSIZE(path));
    #else
        const char* path = strFileName;
    #endif

我认为路径中文件夹的俄文名称存在问题,例如

  

D:\Новаяпапка\ file.dat

变成

  

d:\

  

D:\ test folder \ file.dat

工作正常。

也许setlocale是解决方案?

此代码也有效但我不知道在我的情况下它是否是最佳解决方案。

CT2CA path(fileName);

0 个答案:

没有答案