【PyQt4 实例22】实现ftp的上传和下载(下)
2014-10-11 16:19
387 查看
def slotLogin(self): serverAddress = self.LineEditServer.text() if serverAddress.isEmpty(): QMessageBox.warning(self,self.tr("error"),self.tr("Please input server address!")) return userName = self.LineEditUser.text() if userName.isEmpty(): QMessageBox.warning(self,self.tr("error"),self.tr("Please input user name!")) return password = self.LineEditPassword.text() if password.isEmpty(): QMessageBox.warning(self,self.tr("error"),self.tr("Please input Passwrod!")) return self.ftpClient = QFtp() self.ftpClient.connectToHost(serverAddress) self.connect(self.ftpClient,SIGNAL("stateChanged(int)"),self.slotStateChanged) self.connect(self.ftpClient,SIGNAL("done(bool)"),self.slotDone) self.ftpClient.login(userName,password) self.curStatus = "LOGIN" def slotStateChanged(self,state): if state == QFtp.LoggedIn: self.PushButtonPut.setEnabled(True) self.PushButtonGet.setEnabled(True) def slotPut(self): OK = False fileName,OK = QInputDialog.getText(self,self.tr("Put File:"),self.tr("Please input file name:"),QLineEdit.Normal,QString()) if OK and not fileName.isEmpty(): self.remoteFileName = QFile(fileName) self.ftpClient.put(self.remoteFileName,fileName) self.curStatus = "PUT" def slotGet(self): OK = False fileName,OK = QInputDialog.getText(self,self.tr("Get File:"),self.tr("Please input file name:"),QLineEdit.Normal,QString()) if OK and not fileName.isEmpty(): self.localFile = QFile(fileName) self.localFile.open(QIODevice.WriteOnly) self.ftpClient.get(fileName,self.localFile) self.curStatus = "GET" def slotDone(self,error): if error: QMessageBox.warning(self,self.tr("error"),self.ftpClient.errorString()) return if self.curStatus == "LOGIN": self.PushButtonLogin.setEnabled(False) self.curStatus = "None" if self.curStatus == "PUT": QMessageBox.warning(self,self.tr("succeed"),self.tr("Put file succeed!")) self.curStatus = "None" if self.curStatus == "GET": self.localFile.close() QMessageBox.warning(self,self.tr("succeed"),self.tr("Get file succeed!")) self.curStatus = "None" app=QApplication(sys.argv) dialog=FtpClient() dialog.show() app.exec_()
相关文章推荐
- 【PyQt4 实例22】实现ftp的上传和下载
- php下连接ftp实现文件的上传、下载、删除文件实例代码
- Qt实现FTP的上传和下载的实例代码
- python实现的简单FTP上传下载文件实例
- php下连接ftp实现文件的上传、下载、删除文件实例代码
- python实现的简单FTP上传下载文件实例
- Java实现FTP文件的上传和下载功能的实例代码
- JAVA中使用FTPClient实现文件上传下载实例代码
- JAVA中使用FTPClient实现文件上传下载实例代码
- JAVA中使用FTPClient实现文件上传下载实例代码
- JSP的那些事儿(6)----JSP实现FTP上传及下载
- 利用Indy的TIdFtp控件实现FTP协议, 远程下载上传文件
- Microsoft .NET Framework 2.0对文件传输协议(FTP)操作(上传,下载,新建,删除,FTP间传送文件等)实现汇总1
- 使用.net FtpWebRequest 实现FTP常用功能 上传 下载 获取文件列表 移动 切换目录 改名
- Microsoft .NET Framework 2.0对文件传输协议(FTP)操作(上传,下载,新建,删除,FTP间传送文件等)实现汇总1
- Microsoft .NET Framework 2.0对文件传输协议(FTP)操作(异步上传,下载等)实现汇总2
- FTP上传下载的断点续传实现
- .Net 2.0对文件传输协议(FTP)操作(上传,下载,新建,删除,FTP间传送文件等)实现汇总
- 使用Shell脚本来实现FTP的自动上传下载
- 用vb实现ftp的上传下载