关于QFTP乱码

// 从FTP接收的内容
QString FtpUtil::_FromSpecialEncoding(const QString &InputStr)
{

#ifdef Q_OS_WIN
 return  QString::fromLocal8Bit(InputStr.toLatin1());
#else
 QTextCodec *codec = QTextCodec::codecForName("utf8");
 if (codec)
 {
  return codec->toUnicode(InputStr.toLatin1());
 }
 else
 {
  return QString("");
 }
#endif
}

// 发到ftp的文件名称
QString FtpUtil::_ToSpecialEncoding(const QString &InputStr)
{
#ifdef Q_OS_WIN
 return QString::fromLatin1(InputStr.toLocal8Bit());
#else
 QTextCodec *codec= QTextCodec::codecForName("utf8"); // 这个地方的编码要和文件编码保持一致
 if (codec)
 {
  return QString::fromLatin1(codec->fromUnicode(InputStr));
 }
 else
 {
  return QString("");
 }
#endif
}

原文地址:https://www.cnblogs.com/spplus/p/5722205.html