首页 > 其他 > 详细

XML格式

时间:2020-11-17 16:09:02      阅读:18      评论:0      收藏:0      [点我收藏+]

XML(Extensible Markup Language,可扩展标记语言)

技术分享图片

<storehouse>
	<goods category="fish">
		<title>淡水鱼</title>
		<name>鲫鱼</name>
		<amount>18</amount>
		<price>8</price>
	</goods>
	<goods category="fruit">
		<title>温带水果</title>
		<name>猕猴桃</name>
		<amount>10</amount>
		<price>10</price>
	</goods>
</storehouse>

(1)根元素.任何XML数据文档必须包含根文档,示例根元素为...
(2)子元素. ...等都是子元素
(3)标签.带<>的为标签,为开始标签,为元素结束标签
(4)嵌套元素之间采用缩进格式,建议采用空4个空格的标准缩进格式
(5)属性
(6)文本

XML树形结构主要包括元素.属性.文本三要素

生成XML文件

import sys
class BuildNewXML():                            #自定义建立XML文件
    def __init__(self,filename=None):           #类的初始化保留__init__
        self.filename=filename                  #自定义属性filename
        self.__get_f=None                       #自定义隐函数型(内内部使用)
    def openfile(self):                         #自定义打开xml类函数openfile
        if self.filename==None:                 #如果没有文件名则给出出错提示
            print("没有提供文件名!在建立实例时,请提供建立文本的名称!")
            return False                        #返回False并终止后续代码继续执行
        try:
            self.__get_f=open(self.filename,‘a‘,encoding=‘utf-8‘)        #打开文件
        except:
            print(‘打开%s文件有问题!‘%(self.filename))                    #打开出错
            return False
    def writeXML(self,n,element):
        try:
            if n==0:                                                    #根元素写入
                self.__get_f.write(element+‘\n‘)
            else:
                self.__get_f.write(‘‘*n+element+‘\n‘)
        except:
            print(‘往%s文件写%s出错!‘ % (self.filename,element))          #写入出错提示
    def closeXML(self):
        if self.__get_f:                                                 #在正常打开文件情况下
            self.__get_f.close()                                         #关闭文件

#=============================================================
filename=‘storehouse.xml‘
flag=False
content={1:[0,‘<storehouse>‘],
         2:[4,‘<goods category="fish">‘],
         3:[8,‘<title>淡水鱼</title>‘],
         4: [8, ‘<name>鲫鱼</name>‘],
         5: [8, ‘<amount>18</amount>‘],
         6: [8, ‘<price>8</price>‘],
         7: [4, ‘/goods‘],
         8 :[4, ‘<goods category="fruit">‘],
         9: [8, ‘<title>温带水果</title>‘],
         10: [8, ‘<name>猕猴桃</name>‘],
         11: [8, ‘<amount>10</amount>‘],
         12: [8, ‘<price>10</price>‘],
         13: [4, ‘</goods>‘],
         14: [0, ‘</storehouse>‘],
         }
build_xml=BuildNewXML(filename)
try:
    build_xml.openfile()
    for get_item in content.items():                        #循环读取写入字典对象元素
        build_xml.writeXML(get_item[1][0],get_item[1][1])   #写入XML文件
    flag=True
except:
    print(‘往文件里写内容出错,退出程序!‘)
    sys.exit()
finally:
    if flag:
        build_xml.closeXML()                                #正常关闭打开的XML文件
        print(‘往%s写内容完成‘%(filename))

#执行结果:往storehouse.xml写内容完成

XML格式

原文:https://www.cnblogs.com/17time/p/13993899.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!