主要内容

xmlimportoptions.

导入XML文件的选项对象

描述

一个xmlimportoptions.对象使您可以指定如何使用MATLAB®从XML文件导入结构化的表格数据。该对象包含控制数据导入过程的属性,包括处理错误和缺少数据。

创建

您可以创建一个xmlimportoptions.使用无论是对象xmlImportOptions功能(这里描述)或侦探功能:

  • xmlImportOptions要根据导入要求定义导入属性。

  • 侦探中指定的XML文件的内容来检测和填充导入属性文档名称

    选择= detectImportOptions(文件名)

描述

opts = xmlimportoptions.创造一个xmlimportoptions.具有一个变量的对象。

opts = xmlimportoptions('numvarialbles',numvars.使用指定的变量数创建对象numvars.

例子

opts = xmlimportoptions(___名称,价值指定其他特性XMLMportOptions.对象使用一个或多个名称值参数。

输入参数

全部展开

变量数,指定为正标量整数。

特性

全部展开

变量的属性

变量名称,指定为字符向量或字符串数​​组的单元格数组。这variablenames.属性包含在导入变量时要使用的名称。

如果数据包含N变量,但没有指定变量名称,那么variablenames.属性包含{'var1','var2',...,'varn'}

若要支万博1manbetx持无效的MATLAB标识符作为变量名,如变量名包含空格和非ascii字符,请设置variablenamingrule.“保存”

例子:opts.variablenames.返回当前(检测到的)变量名。

例子:opts.VariableNames(3) ={“高度”}将第三种变量的名称更改为高度

数据类型:字符|细绳|细胞

标志以保留变量名,指定为逗号分隔对,由variablenamingrule.或者'调整'或者“保存”

  • '调整'-转换无效的变量名(由isvarname.函数)转换为有效的MATLAB标识符。

  • “保存”- 保留不具有有效MATLAB标识符的变量名称,例如包含空格和非ASCII字符的变量名称。

从R2019B开始,变量名称和行名可以包含任何字符,包括空格和非ASCII字符。此外,它们可以从任何角色开始,而不仅仅是字母。变量和行名不必是有效的matlab标识符(由此确定)isvarname.功能)。要保留这些变量名称和行名称,请设置值variablenamingrule.“保存”

数据类型:字符|细绳

变量的数据类型,指定为字符向量的单元格数组或包含一组有效数据类型名称的字符串数组。这variabletypes.属性指定导入变量时要使用的数据类型。

更新variabletypes.财产,使用setvartype.功能。

例子:opts.variabletypes.返回当前变量数据类型。

例子:opts = setvartype(选择,'height',{'double'})更改变量的数据类型高度双重的

要导入的变量子集,指定为字符向量,字符串标量,字符向量,字符串数组或数字索引数组。

sedicentvariablenames.必须是包含在内的名称子集variablenames.财产。默认情况下,sedicentvariablenames.包含来自的所有变量名称variablenames.属性,这意味着导入所有变量。

使用sedicentvariablenames.属性只进口感兴趣的变量。使用该变量的子集指定sedicentvariablenames.财产和使用可阅读仅导入该子集。

若要支万博1manbetx持无效的MATLAB标识符作为变量名,如变量名包含空格和非ascii字符,请设置variablenamingrule.“保存”

例子:opts.selectedvariablenames = {'height','lastname'}仅选择两个变量,高度,用于导入操作。

例子:选择。SelectedVariableNames = [1 5]仅选择两个变量,第一个变量和第五变量,用于导入操作。

例子:t = readtable(文件名,opts)返回仅包含在中指定的变量的表sedicentvariablenames.财产的选择目的。

数据类型:uint16|UINT32|UINT64|字符|细绳|细胞

键入特定的变量导入选项,作为变量导入选项对象数组返回。数组包含对应于指定的每个变量的对象variablenames.财产。阵列中的每个对象都包含支持使用特定数据类型导入数据的属性。万博1manbetx

变量选项支持这些数据类型:数字,文万博1manbetx本,逻辑约会时间, 或者分类

要查询变量的当前(或检测到的)选项,请使用格瓦罗普茨功能。

要设置和自定义变量的选项,请使用setvaropts.功能。

例子:opts.variableOptions.返回一系列可变端口选项对象,每个对象对应于数据中的每个变量。

例子:getvaropts(选择“高”)返回可变端口选项对象高度多变的。

例子:opts = setvaropts(opts,'height','fillvalue',0)设置fillvalue.变量的属性高度0.

可变描述XPath表达式,指定为读取功能读取用于选择变量描述的字符向量或字符串标量。您必须指定variabledescriptions选择器作为有效的XPath版本1.0表达式。

例子:'variabledescriptions selector','/ rootnode / shildnode'

表变量XPath表达式,指定为读取函数用于选择表变量的字符向量或字符串数​​组的单元格数组。您必须指定变形electors.作为有效的XPath版本1.0表达式。

例子:VariableSelectors, {' / RootNode / ChildNode '}

例子:‘VariableSelectors’,”/ RootNode / ChildNode”

例子:'VariaBliceElectors',[“/ rootnode / shildnode1”,“/ rootnode / shildnode2”]

可变单元XPath,指定为读取函数用于选择表变量单元的字符向量或字符串标量。您必须指定变量单独选择作为有效的XPath版本1.0表达式。

例子:'“变量单独选择”,“/ rootnode / shildnode”

表属性

表行名称XPath表达式,指定为读取功能用于选择表行的名称的字符向量或字符串标量。您必须指定rownamesselector作为有效的XPath版本1.0表达式。

例子:'rownamesselector','/ rootnode / shildnode'

表行XPath表达式,指定为字符向量或字符串标量,读取函数使用它选择输出表的各个行。您必须指定Rowselector.作为有效的XPath版本1.0表达式。

例子:“行选择器”,“/RootNode/ChildNode”

表数据XPath表达式指定为读取功能用于选择输出表数据的字符向量或字符串标量。您必须指定tableselector.作为有效的XPath版本1.0表达式。

例子:'tableselector','/ rootnode / shordnode'

一组已注册的XML命名空间前缀,指定为逗号分隔对,由注册NameSpaces.和一系列前缀。读取函数在XML文件上评估XPath表达式时使用这些前缀。将命名空间前缀及其关联的URL指定为NX2字符串数组。注册NameSpaces.当您还要评估选择器名称值参数指定的XPath表达式时,可以使用,例如structSelector.为了阅读, 或者变形electors.为了可阅读ReadTimetable.

默认情况下,读取功能会自动检测命名空间前缀以注册用于XPath评估,但您也可以使用该注册新的命名空间前缀注册NameSpaces.名称-值参数。当XML节点具有名称空间URL,但XML文件中没有声明名称空间前缀时,可以注册一个新的名称空间前缀。

例如,对一个名为example.xml.不包含命名空间前缀的。具体说明“RegisteredNamespaces”作为[“我的前缀”//www.tianjin-qmedu.com”]分配前缀MyPrefix.到URL//www.tianjin-qmedu.com.

t = readtable(“example.xml”,“VariableelElector”,“/ MyPrefix:Data”,...“注册NameSpace”,[“MyPrefix”,“//www.tianjin-qmedu.com”))

例子:“注册namespaces”,[“myprefix”,“//www.tianjin-qmedu.com”]

替换规则

程序管理缺失数据,指定为此表中的值之一。

缺少规则 行为
“填充”

用内容替换丢失的数据fillvalue.财产。

fillvalue.属性在可变端口选项正在导入的变量的对象。有关访问fillvalue.财产,参见格瓦罗普茨

“错误” 停止导入并显示显示缺失的记录和字段的错误消息。
'奥马克' 省略包含缺失数据的行。
“省略变量” 省略包含缺失数据的变量。

例子:选择opts.missingrule ='欧洲';

数据类型:字符|细绳

处理导入错误的过程,指定为此表中的一个值。

导入错误的规则 行为
“填充”

替换错误发生错误的数据fillvalue.财产。

fillvalue.属性在可变端口选项正在导入的变量的对象。有关访问fillvalue.财产,参见格瓦罗普茨

“错误” 停止导入并显示一个错误消息,显示导致错误的记录和字段。
'奥马克' 省略发生错误的行。
“省略变量” 省略发生错误的变量。

例子:opts.ImportErrorRule='omitvar';

数据类型:字符|细绳

处理表中给定行中重复的XML节点的过程,指定为'addcol''忽略', 或者“错误”

重复节点规则

行为

'addcol'

在表格中的变量标题下添加列的列。指定值'重复诺德鲁莱恩'作为'addcol'在表中没有在表中为重复节点创建单独的变量。

'忽略'

跳过导入重复的节点。

“错误” 显示错误消息并中止导入操作。

例子:'repedednoderule','忽略'

例子

全部收缩

为XML文件创建XML导入选项,指定要导入的变量,然后读取数据。

XML文件学生.XML.是否命名了四个兄弟节点学生,它们包含相同的子节点和属性。

类型学生.XML.
18大一新生//www.tianjin-qmedu.com">591春巷NatickMA计算机科学英语文学18岁新生4641珍珠街旧金山加利福尼亚州微生物学公共卫生21岁高中高地路30号DetriotMI政治学19岁大二
3388摩尔大道沃思堡德克萨斯州商业日语大二年级3388摩尔大道TX商业日语22岁高中//www.tianjin-qmedu.com">22安吉大道洛杉矶加州
机械工程建筑建筑21岁初中迪凯特巷65号TrentonME经济学艺术史

创建一个xmlimportoptions.来自文件的对象。指定值变形electors.作为/ / @FirstName选择要作为表变量导入的元素节点。

opts = xmlimportoptions(“variableelectors”“//@FirstName”
opts=XMLImportOptions with properties:替换属性:MissingRule:“fill”ImportErrorRule:“fill”RepeatedNodeRule:“addcol”变量导入属性:使用setvartype VariableNames按名称设置类型:“Var1”VariableTypes:“char”SelectedVariableNames:“Var1”VariableOptions:显示所有1个VariableOptions使用setvaropts/getvaropts VariableName访问VariableOptions子属性:“保留”位置属性:表选择器:行选择器:VariableSelectors://@FirstNameVariableUnitsSelector:VariableDescriptionSelector:RowNamesSelector:RegisteredNamespaces:[0x2字符串]

可阅读与选项对象一起导入指定变量。

T=可读性(“students.xml”,选择)
t =7×1表var1 __________ {'priya'} {'conor'} {'摩根'} {'salim'} {'salim'} {'salim'} {'dania'} {'rikki'}

属性将自定义XML名称空间前缀注册到输入文件中的现有名称空间URL注册NameSpaces.名称-值参数。

创建一个xmlimportoptions.来自XML文件的对象。指定XPath表达式街道元素节点作为值'VariablingElectors',并注册前缀MyPrefix.到属于的URL街道节点。

opts = detectimportoptions(“students.xml”“注册namespaces”,[“myprefix”“//www.tianjin-qmedu.com”],......“variableelectors”“// myprefix:街道”
opts = XMLImportOptions with properties: Replacement properties: missinggrule: "fill" importterrorrule: "fill" RepeatedNodeRule: "addcol"变量导入属性:使用setvartype VariableNames: "Street" VariableTypes: "string" SelectedVariableNames: "Street" VariableOptions:使用setvaropts/getvaropts variablemingrule: "preserve" Location Properties: TableSelector:  RowSelector:  variableelector: "//myPrefix:Street" VariableUnitsSelector:  VariableDescriptionsSelector:  RowNamesSelector:<缺少> RegisteredNamespaces: ["myPrefix" "//www.tianjin-qmedu.com"]

使用可阅读函数与选项对象一起导入选定变量。

t2 =可读取的(“students.xml”,选择)
T2 =7×1表街道___________________“春天巷591号”“珍珠街4641号”“高地路30号”“摩尔大道3388号”“摩尔大道3388号”“安吉路22号”“迪克路65号”

提示

  • XPath选择器名称值参数支持以下XPath语法,例如万博1manbetxRowselector.或者variablingelector

    • 要选择名称与要选择的节点匹配的每个节点,无论文档中的位置如何,请使用“// mynode”句法。您可以使用“// mynode”要省略前面要选择的节点之前的XPath表达式。

    • 要在文件中的一个父节点下读取几个兄弟节点之一,可以指定儿童编码[N]哪里N对应于要索引的同级节点。例如,路径“/RootNode/ChildNode[2]”选择第二个儿童潮流父母的元素RootNode

    • 要读取输入XML文件中属于元素节点的属性值,请指定@在属性名称之前。例如,“/ rootnode / shordnode [2] / @ attributename”选择属性attributename.属于第二个儿童潮流父母的元素RootNode

也可以看看

||

在R2021A介绍