您好,能帮我解决个问题么,非常感谢!
描述:代码执行功能是扫描列表中的文件,然后依次合并成一个新的文件,在执行到 new = IntelHex(self.ui.tableWidget.item(self,i, 0).data(0))时候卡住, 下边执行不了,有谁能告诉我原因么?是不是我调用IntelHex()函数,传参 错误呢?不太理解,非常感谢!
row_count = self.ui.tableWidget.rowCount()
if row_count < 2:
print("待合并的文件小于2,不符合合并要求!")
return
#新建一个hex对象,空对象
last = IntelHex()
#循环合并,合并成一个新文件
for i in range(row_count):
#循环获取行列表中的文件路径信息
new = IntelHex(self.ui.tableWidget.item(self,i, 0).data(0))
print(new)
print("---")
new.start_addr = None
print("+++")
try:
last.merge(new,overlap='error')
print("进入try")
except Exception as f:
print(f"合并失败:{f}")
self.ui.lineEdit.setText("文件合并失败!!!")
return
print("到这里了")
#保存文件,判断是否成功
save_path = QFileDialog.getSaveFileName(self,self.tr('保存文件'),'.\\', 'Data files (*.hex)')[0]
if save_path:
last.write_hex_file(save_path)
self.ui.lineEdit.setText("文件合并成功!!!")
print("合并成功")