注册 登录
编程论坛 VC++/MFC

有关 CFtpConnecit ftp上传文件到linux服务器上的问题

linkang1024 发布于 2016-10-11 16:09, 2186 次点击
我用的是 vs2013  工程属性是用unicode字符。   我用以下方法把unicode转成utf-8
CString Remote = _T("中式简约实木茶几.ractpack.rar");
int nLen = WideCharToMultiByte(CP_UTF8, 0, Remote, -1, NULL, 0, NULL, NULL);
char* pResult = new char[nLen + 1];
WideCharToMultiByte(CP_UTF8, 0, Remote, -1, pResult, nLen + 1, NULL, NULL);
pResult[nLen ] = '\0';


但是 CFtpConnecit  里putfile 是用CString 传递参数 所有我把 转出来pResult 直接
CString sc(pResult);
然后上传到linux的ftp服务器时, 中文字符的最后一个中文会乱码 前面的就不会, 完全搞不懂 这是为什么。
linux服务器的编码是用zh_CN.UTF-8 这种编码。

是不是我这句CString sc(pResult); 这样赋值是不行的? 求解啊
0 回复
1