ファイルをディスクに書き込んでいますが、書き込む前に、QListWidgetからテキスト変数にすべてのアイテムを収集します。各行は「\ n」で区切られていますが、すべての行を取得する代わりに、最後の行のみを取得します。
def makeBatFile(self):
text=""
for each in xrange(self.listWidget.count()):
text="echo [Task Id:%s]\n" % each
text=text+ self.listWidget.item(each).text() +"\n"
print text
self.writeBatFile("batch",text)
forループ内のprintはすべての行を出力しますが、すべてのリストアイテムを書き込みたいときに、リスト内のアイテム数をファイルに書き込もうとするため、forループ内からwriteBatfileメソッドを呼び出すことはできません。 1つのファイルで...
def writeBatFile(self,do="single",task=None):
self.task=task
now = datetime.datetime.now()
buildCrntTime=str(now.hour) +"_" + str(now.minute)
selected=str(self.scnFilePath.text())
quikBatNam=os.path.basename(selected).split(".")[0]+"_"+buildCrntTime+".bat"
if do !="batch":
self.batfiletoSave=os.path.join(os.path.split(selected)[0],quikBatNam)
self.task = str(self.makeBatTask())
else:
self.batfiletoSave=os.path.join(self.batsDir,buildCrntTime+".bat")
try:
writeBat=open(self.batfiletoSave,'w')
writeBat.write(self.task)
self.execRender()
except: pass
finally: writeBat.close()
writeBatFileメソッドに渡されるコンテンツをビルドしているときに何が間違っていますか?