如何创建包含用户创建的QTreeWidgetItem的层次结构的xml文件,我正在使用(ETreeElement创建xml文件)?,我试图通过让xml文件在用户创建它的过程中获得它的结构来实现这一点,但是我只得到了带有第一个子项的根项,而无法获得其他项
def rootItem(self):
itemName = self.TreeviewForFolders.topLevelItem(0).text(0)
return itemName
def addItem(self, name, parent):
self.TreeviewForFolders.expandItem(parent)
item = QTreeWidgetItem(parent)
item.setText(0,name)
item.setFlags(Qt.ItemIsEditable | Qt.ItemIsSelectable | Qt.ItemIsEnabled)
return item
def addFolders(self):
item = self.TreeviewForFolders.invisibleRootItem()
if(self.TreeviewForFolders.topLevelItemCount() == 0):
self.addItem("Item", item)
root = Element(str(self.rootItem()))
else:
if(len(self.TreeviewForFolders.selectedItems()) > 0):
item = self.TreeviewForFolders.selectedItems()[0]
self.addItem("Item", item)
root = Element(str(self.rootItem()))
child = SubElement(root, "Item")
output_file = open( 'Tamplet.xml', 'w' )
output_file.write( '<?xml version="1.0"?>' )
output_file.write( ElementTree.tostring( root ) )
output_file.close()
你不能直接写一个对象到文件,你必须序列化它。在
使用此gnosisxml库将对象序列化为xml:From here
有关详细信息,请查看此stackoverflow question
相关问题 更多 >
编程相关推荐