忙了一天终于实现了Ftpclient的Qt4程序,主要是中文支持问题,解决后心情一下子好多了!
解决方法如下:
在FtpClientWindow::changeList函数中QListWidgetItem *item = new QListWidgetItem;语句后加入如下代码
QTextCodec *codec=QTextCodec::codecForName("gbk");
QByteArray ba=urlInfo.name().toLatin1();
QString temp=codec->toUnicode(ba);
directory[temp]=urlInfo.name();
item->setText(temp);
listWidget->addItem(item);
前面几行是实现编码转换达到ListWidget中显示中文的目的。
其中directory是QHash型的用来保存urlInfo.name()与ListWidget中item中文编码相对应,在进行ftp操作时可找到起相应文字编码,这样就避免了ftp传输其不识别的中文编码。
工作结束!