MATLAB社区

MATLAB、社区和更多

在MATLAB中使用XML

互联网上的大部分数据都存储在XML的一些味道。幸运的是,MATLAB具有内建函数来处理XML文件。这将是第一个在一系列的连任的文章关于在MATLAB处理XML。今天我要描述的功能阅读,写作,和转换XML文件。

有三个功能在MATLAB来专门处理XML文件。第一个是xmlread。此函数接受一个URL或文件名,在工作区中创建一个Java XML对象:

xmlfile = fullfile (matlabroot,“工具箱/ matlab /一般/ info.xml”);xDoc = xmlread (xmlfile)
xDoc =[#文档:null]

别担心,返回值表示:“【#文档:零】”。的xmlread函数返回一个Java对象表示文件的文档对象模型或DOM。““只是什么org.apache.xerces.dom.DeferredDocumentImpl的实现toString ()转储到MATLAB命令窗口。更多地了解与Java对象交互在MATLAB中,看到的我的前一篇文章

为了确保这个对象我们所有的XML文本,我们用下一个MATLAB XML函数:xmlwrite。没有任何附加参数,xmlwrite将显示的内容DOM在命令窗口:

xmlwrite (xDoc)
ans = < ?xml version = " 1.0 " encoding = " utf - 8 " ?> < productinfo xmlns: xsi = " http://www.w3.org/2001/XMLSchema-instance " xsi: noNamespaceSchemaLocation = " //www.tatmou.com/namespace/info/v1/info.xsd " > < ?type = " text / xml样式表xsl " href = " //www.tatmou.com/namespace/info/v1/info.xsl "吗?14 > < matlabrelease > < / matlabrelease > <名称> MATLAB < /名称> <类型> MATLAB < /类型> <图标> ApplicationIcon。MATLAB $docroot/techdoc  com.mathworks.mde.editor.EditorOptions    

当然,您也可以使用xmlwrite将XML文档保存到磁盘,通过调用xmlwrite用下面的签名:

xDoc xmlwrite(输出文件)

当处理一个问题xmlread是因为创建DOM对象是一个Java对象,它存储在Java内存。内存预留为Java系统的依赖,但通常是在64年和256 MB。这意味着,如果你读200 MB的XML文件中,你将会耗尽内存,不管多大的自由内存MATLAB说。在这种情况下,您只需要调整数量的内存用于Java、新偏好面板

MATLAB提供的最终XML函数处理转换XML文档XSL样式表。的xslt函数接受一个DOM对象或一个文件名或url指定XML文档,一个文件名或url指定一个XSL样式表,并执行转换和输出目的地。使用样式表很复杂所以我不打算深入研究他们。

下一次,我将讨论DOM对象本身以及如何添加、删除和查询节点。

|
  • 打印
  • 发送电子邮件

评论

留下你的评论,请点击在这里MathWorks账户登录或创建一个新的。