文件名是乱码怎么打开这样的文件

6 篇文章 0 订阅

文件名是乱码怎么打开这样的文件

 

 

乱码文件必须使用宽字符进行打开 比如 C 的 _wfopen( )

前提 ,读取文件名是必须是正确的编码,对,乱码也要有正确的编码、读取的文件名和文件显示的乱码一样。否则置换成宽字节照样打不开。

 

附上宽字节置换方法

int len = strlen(filename.getCharPointer());

char* srcbuff = new char[len + 1];

memset(srcbuff, 0, len + 1);

strcpy(srcbuff, filename.getCharPointer());

wchar_t* output = new wchar_t[len + 1];

memset(output, 0, sizeof(wchar_t)*(len + 1));//必须

mbstowcs(output, srcbuff, len + 1);





//转modes
        wchar_t newmodels[10] = { 0 };
        mbstowcs(newmodels, modes, strlen(modes));
        //打开文件
        file_ = _wfopen(output, newmodels);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值