Når jeg bruker QFTP oss sette kommando for å laste opp en fil det bare laster opp rundt 40 byte av den angitte filen. Jeg fange dataProgress signal og jeg får fremgang, men den totale størrelsen på filen er skrivebeskyttet til å være rundt 40 bytes. Er det noe galt med min kode, eller er det et problem på FTP-serveren side?
Her er min opplastingsfunksjon:
def upload(self):
filename = QFileDialog.getOpenFileName(self, 'Upload File', '.')
fname = QIODevice(filename[0])
dataname = filename[0]
data = os.path.basename(dataname)
#data = data[data.find(/) + 1:]
print data
print fname
if not self.fileTree.currentItem():
self.qftp.put(fname, data)
elif . in self.fileTree.currentItem().text(0):
self.qftp.put(fname, self.fileTree.currentItem().parent().text(0) + data)
elif self.fileTree.currentItem().text(0) == /:
self.qftp.put(fname, data)
else:
return
Alright, funnet ut hva jeg trengte å gjøre. Jeg trengte for å lage en QFile Klarte og lese alle bytes fra den filen og deretter sende det til put-kommandoen.
def upload(self):
filename = QFileDialog.getOpenFileName(self, 'Upload File', '.')
data = QFile(filename[0])
data.open(1)
qdata = QByteArray(data.readAll())
file = os.path.basename(filename[0])
print data
if not self.fileTree.currentItem():
self.qftp.put(qdata, file, self.qftp.TransferType())
elif . in self.fileTree.currentItem().text(0):
self.qftp.put(qdata, self.fileTree.currentItem().parent().text(0) + file)
elif self.fileTree.currentItem().text(0) == /:
self.qftp.put(qdata, file)
else:
return