detectImportOptions
基于文件内容生成导入选项
说明
在文件中找到一个表并返回其导入选项。您可以修改选项对象,并将它与 opts = detectImportOptions(filename)readtable 一起使用以控制 MATLAB® 如何导入表格数据。返回的选项类型取决于文件扩展名。
对于电子表格文件,该函数返回一个
SpreadsheetImportOptions对象。对于文本文件,该函数返回一个
DelimitedTextImportOptions或FixedWidthImportOptions对象。对于 JSON 文件,该函数返回一个
JSONImportOptions对象。对于 XML 文件,该函数返回一个
XMLImportOptions对象。对于 Microsoft® Word 文档,该函数返回一个
WordDocumentImportOptions对象。对于 HTML 文件,该函数返回一个
HTMLImportOptions对象。
使用一个或多个名称-值参量指定其他选项。例如,您可以指定要导入的变量和行。opts = detectImportOptions(filename,Name=Value)
示例
使用导入选项对象配置 readtable 解释文件的方式。例如,使用导入选项对象仅从电子表格文件中读取指定的变量。
首先,通过使用 detectImportOptions 检测电子表格文件的各个方面(包括变量名称和类型),从文件创建一个导入选项对象。在本例中,detectImportOptions 会创建一个 SpreadsheetImportOptions 对象。
opts = detectImportOptions("patients.xls")opts =
SpreadsheetImportOptions with properties:
Sheet Properties:
Sheet: ''
Replacement Properties:
MissingRule: 'fill'
ImportErrorRule: 'fill'
MergedCellColumnRule: 'placeleft'
MergedCellRowRule: 'placetop'
Variable Import Properties: Set types by name using setvartype
VariableNames: {'LastName', 'Gender', 'Age' ... and 7 more}
VariableTypes: {'char', 'char', 'double' ... and 7 more}
SelectedVariableNames: {'LastName', 'Gender', 'Age' ... and 7 more}
VariableOptions: Show all 10 VariableOptions
Access VariableOptions sub-properties using setvaropts/getvaropts
VariableNamingRule: 'modify'
Range Properties:
DataRange: 'A2' (Start Cell)
VariableNamesRange: 'A1'
RowNamesRange: ''
VariableUnitsRange: ''
VariableDescriptionsRange: ''
To display a preview of the table, use preview
通过修改导入选项对象来指定要导入的变量。然后,使用 readtable 和导入选项对象导入指定的变量。显示表的前 5 行。
opts.SelectedVariableNames = ["Systolic","Diastolic"]; T = readtable("patients.xls",opts); T(1:5,:)
ans=5×2 table
Systolic Diastolic
________ _________
124 93
109 77
125 83
117 75
122 80
使用导入选项对象配置 readtable 解释文件的方式。例如,使用导入选项对象仅读取文本文件的一部分内容。
首先,使用 detectImportOptions 创建一个导入选项对象来检测文本文件的各个方面,包括变量名称和类型、分隔符以及空白字符。在本例中,detectImportOptions 会创建一个 DelimitedTextImportOptions 对象。
opts = detectImportOptions("airlinesmall.csv")opts =
DelimitedTextImportOptions with properties:
Format Properties:
Delimiter: {','}
Whitespace: '\b\t '
LineEnding: {'\n' '\r' '\r\n'}
CommentStyle: {}
ConsecutiveDelimitersRule: 'split'
LeadingDelimitersRule: 'keep'
TrailingDelimitersRule: 'ignore'
EmptyLineRule: 'skip'
Encoding: 'ISO-8859-1'
Replacement Properties:
MissingRule: 'fill'
ImportErrorRule: 'fill'
ExtraColumnsRule: 'addvars'
Variable Import Properties: Set types by name using setvartype
VariableNames: {'Year', 'Month', 'DayofMonth' ... and 26 more}
VariableTypes: {'double', 'double', 'double' ... and 26 more}
SelectedVariableNames: {'Year', 'Month', 'DayofMonth' ... and 26 more}
VariableOptions: Show all 29 VariableOptions
Access VariableOptions sub-properties using setvaropts/getvaropts
VariableNamingRule: 'modify'
Location Properties:
DataLines: [2 Inf]
VariableNamesLine: 1
RowNamesColumn: 0
VariableUnitsLine: 0
VariableDescriptionsLine: 0
To display a preview of the table, use preview
通过修改导入选项对象来指定要导入的变量子集。然后,使用 readtable 和导入选项对象导入数据子集。
opts.SelectedVariableNames = ["TaxiIn","TaxiOut"]; T = readtable("airlinesmall.csv",opts);
检测 Microsoft Word 文档文件的导入选项,指定要导入的表,然后读取数据。
文件 MaintenanceReport.docx 包含两个表。第二个表的最后一行包含一个其合并列与表变量不匹配的单元格。
使用 detectImportOptions 函数检测导入选项。通过将 TableIndex 设置为 2 来指定从第二个表中读取。
filename = "MaintenanceReport.docx"; opts = detectImportOptions(filename,'TableIndex',2)
opts =
WordDocumentImportOptions with properties:
Replacement Properties:
MissingRule: "fill"
ImportErrorRule: "fill"
EmptyRowRule: "skip"
MergedCellColumnRule: "placeleft"
MergedCellRowRule: "placetop"
ExtraColumnsRule: "addvars"
Variable Import Properties: Set types by name using setvartype
VariableNames: ["Description" "Category" "Urgency" "Resolution" "Cost"]
VariableTypes: ["string" "string" "string" "string" "string"]
SelectedVariableNames: ["Description" "Category" "Urgency" "Resolution" "Cost"]
VariableOptions: Show all 5 VariableOptions
Access VariableOptions sub-properties using setvaropts/getvaropts
VariableNamingRule: "preserve"
Location Properties:
TableSelector: "(//w:tbl)[2]"
DataRows: [2 Inf]
VariableNamesRow: 1
VariableUnitsRow: 0
VariableDescriptionsRow: 0
RowNamesColumn: 0
要跳过读取包含具有合并列的单元格的行,请将 MergedCellColumnRule 属性设置为 'omitrow'。
opts.MergedCellColumnRule = 'omitrow';使用带有选项对象的 readtable 函数从 Microsoft Word 文档文件中读取表。
filename = "MaintenanceReport.docx";
T = readtable(filename,opts)T=3×5 table
Description Category Urgency Resolution Cost
_____________________________________________________________________ ____________________ ________ __________________ ________
"Items are occasionally getting stuck in the scanner spools." "Mechanical Failure" "Medium" "Readjust Machine" "$45"
"Loud rattling and banging sounds are coming from assembler pistons." "Mechanical Failure" "Medium" "Readjust Machine" "$35"
"There are cuts to the power when starting the plant." "Electronic Failure" "High" "Full Replacement" "$16200"
检测 HTML 文件的导入选项,指定要导入的表,然后读取数据。
从包含文本“readtable”的 URL https://www.mathworks.com/help/matlab/text-files.html 中检测第一个表的导入选项。使用 detectImportOptions 函数检测导入选项,并使用 XPath 查询 "//TABLE[contains(.,'readtable')]" 指定要读取的表。通过将 ReadVariableNames 设置为 false 来指定不读取变量名称。
url = "https://www.mathworks.com/help/matlab/text-files.html"; opts = detectImportOptions(url,'TableSelector',"//TABLE[contains(.,'readtable')]",'ReadVariableNames',false)
opts =
HTMLImportOptions with properties:
Replacement Properties:
MissingRule: "fill"
ImportErrorRule: "fill"
EmptyRowRule: "skip"
MergedCellColumnRule: "placeleft"
MergedCellRowRule: "placetop"
ExtraColumnsRule: "addvars"
Variable Import Properties: Set types by name using setvartype
VariableNames: ["Var1" "Var2"]
VariableTypes: ["string" "string"]
SelectedVariableNames: ["Var1" "Var2"]
VariableOptions: Show all 2 VariableOptions
Access VariableOptions sub-properties using setvaropts/getvaropts
VariableNamingRule: "preserve"
Location Properties:
TableSelector: "//TABLE[contains(.,'readtable')]"
DataRows: [1 Inf]
VariableNamesRow: 0
VariableUnitsRow: 0
VariableDescriptionsRow: 0
RowNamesColumn: 0
使用 readtable 函数读取表。
T = readtable(url,opts)
T=4×2 table
"readtable" "Create table from file"
"writetable" "Write table to file"
"readtimetable" "Create timetable from file"
"writetimetable" "Write timetable to file"
通过指定导入选项将文本数据作为字符串数据类型导入。
为文件创建选项对象。
opts = detectImportOptions('outages.csv');使用 readtable 指定要导入的变量,然后显示摘要。所选变量的数据类型是 char。
opts.SelectedVariableNames = {'Region','Cause'};
T = readtable('outages.csv',opts);
summary(T)T: 1468×2 table
Variables:
Region: cell array of character vectors
Cause: cell array of character vectors
Statistics for applicable variables:
NumMissing
Region 0
Cause 0
将文本数据作为 string 数据类型导入,然后通过指定 TextType 名称-值对组创建导入选项。
opts = detectImportOptions('outages.csv','TextType','string');
使用 readtable 指定要导入的变量,然后显示摘要。所选变量的数据类型现在是 string。
opts.SelectedVariableNames = {'Region','Cause'};
T = readtable('outages.csv',opts);
summary(T)T: 1468×2 table
Variables:
Region: string
Cause: string
Statistics for applicable variables:
NumMissing
Region 0
Cause 0
将 XML 文件的内容导入表中。
students.xml 文件有三个名为 Student 的同级节点,每个节点都包含相同的子节点和属性。
type students.xml<?xml version="1.0" encoding="utf-8"?>
<Students>
<Student ID="S11305">
<Name FirstName="Priya" LastName="Thompson" />
<Age>18</Age>
<Year>Freshman</Year>
<Address>
<Street xmlns="https://www.mathworks.com">591 Spring Lane</Street>
<City>Natick</City>
<State>MA</State>
</Address>
<Major>Computer Science</Major>
<Minor>English Literature</Minor>
</Student>
<Student ID="S23451">
<Name FirstName="Conor" LastName="Cole" />
<Age>18</Age>
<Year>Freshman</Year>
<Address>
<Street xmlns="https://www.mathworks.com">4641 Pearl Street</Street>
<City>San Francisco</City>
<State>CA</State>
</Address>
<Major>Microbiology</Major>
<Minor>Public Health</Minor>
</Student>
<Student ID="S119323">
<Name FirstName="Morgan" LastName="Yang" />
<Age>21</Age>
<Year>Senior</Year>
<Address>
<Street xmlns="https://www.mathworks.com">30 Highland Road</Street>
<City>Detriot</City>
<State>MI</State>
</Address>
<Major>Political Science</Major>
</Student>
</Students>
首先,使用 detectImportOptions 创建一个 XMLImportOptions 对象来检测 XML 文件的各个方面。通过将 VariableSelectors 名称-值参量指定为 Street 元素节点的 XPath 表达式,仅将街道名称读入表中。通过设置 RegisteredNamespaces 名称-值参量,将自定义命名空间前缀注册到现有命名空间 URL。
opts = detectImportOptions("students.xml",RegisteredNamespaces=["myPrefix","https://www.mathworks.com"], ... VariableSelectors="//myPrefix:Street");
然后,使用 readtable 和导入选项对象导入指定的变量。
T = readtable("students.xml",opts)T=3×1 table
Street
___________________
"591 Spring Lane"
"4641 Pearl Street"
"30 Highland Road"
输入参数
要读取的文件的名称,指定为字符向量或字符串标量。
根据文件的位置,filename 可以采用下列形式之一。
位置 | 形式 | ||||||||
|---|---|---|---|---|---|---|---|---|---|
| 当前文件夹或 MATLAB 路径上的文件夹 | 指定 示例: | ||||||||
文件夹中的文件 | 如果该文件不在当前文件夹或 MATLAB 路径下的文件夹中,则在 示例: 示例: | ||||||||
| Internet URL | 如果文件指定为 Internet 统一资源定位器 (URL),则 示例: | ||||||||
远程位置 | 如果文件存储在远程位置,则
根据远程位置,
有关详细信息,请参阅处理远程数据。 示例: |
如果 filename 包含文件扩展名,则 detectImportOptions 基于扩展名确定文件格式。否则,您必须指定 'FileType' 名称-值对组以指示文件类型。
detectImportOptions 函数支持以下文件扩展名:.txt、.dat、.csv、.xls、.xlsb、.xlsm、.xlsx、.xltm、.xltx、.ods、.json、.xml、.docx、.html、.xhtml、.htm、.zip、.gz 和 .tar。
压缩文件格式作为文件读取。存档文件格式被视为文件夹。例如,函数将 mydatafiles.zip 解释为文件夹,因此必须在其中指定一个文件,如 mydatafiles.zip/file1.xlsx。对于以 .gz 扩展名结尾的文件,函数通过使用 .gz 之前的扩展名来确定文件格式。例如,mydata.csv.gz 作为 CSV 文件读取。 (自 R2025a 起)
只有在使用了 Windows® 版 Excel® 的平台上才支持文件扩展台 .xlsb 和 .ods。
数据类型: char | string
名称-值参数
将可选参量对组指定为 Name1=Value1,...,NameN=ValueN,其中 Name 是参量名称,Value 是对应的值。名称-值参量必须出现在其他参量之后,但对各个参量对组的顺序没有要求。
示例: detectImportOptions(filename,FileType="spreadsheet") 指示指定的文件是电子表格。
数据和标题位置
文件开头要跳过的标题行数,指定为非负整数。如果未指定此名称-值参量,detectImportOptions 会自动检测要跳过的行数。
变量名称和数据的读取从第一个非标题行开始。
数据类型: single | double
要从文件中读取的范围,指定为以下形式之一的字符串标量、字符向量或数值向量。
指定 Range 的方式 | 描述 |
|---|---|
起始元素 | 将数据的起始元素指定为以下值之一:
示例: 示例: |
矩形范围 | 将数据的矩形范围指定为以下值之一:
列数必须与 示例: 示例: |
行范围 | 使用行号以 根据指定的行范围, 示例: |
列范围 | 使用 A1 表示法的列字母以
列数必须与 示例: |
命名范围(仅限电子表格) | 您可以创建名称来标识电子表格中的范围。例如,您可以选择电子表格的一个矩形部分,并将其命名为 |
未指定或为空 | 如果未指定此名称-值参量, 注意:使用范围是指文件中实际包含数据的矩形部分。 |
数据的位置,指定为以下形式之一的字符串标量、字符向量、正整数或 N×2 正整数数组。
指定 DataRange 的方式 | 描述 |
|---|---|
起始单元格 | 使用 A1 表示法将数据的起始单元格指定为包含列字母和行号的字符串标量或字符向量。例如,
示例: |
起始行 | 使用正行索引指定包含数据的起始行。
示例: |
矩形范围 | 使用
示例: |
行范围 | 使用行号以 根据指定的行范围, 示例: |
列范围 | 使用 A1 表示法的列字母以
示例: |
多个行范围 | 使用包含 包含多个行范围的有效数组必须满足以下条件:
仅支持对数值数组中的最后一个行范围使用 示例: |
空 | 不读取任何数据。 示例: |
要读取的工作表,指定为正整数(指示工作表索引)或者指定为字符串标量或字符向量(包含工作表名称)。默认情况下,detectImportOptions 读取第一个工作表。
如果指定字符串标量或字符向量,则工作表名称不能包含冒号 (:)。要确定电子表格文件中工作表的名称,请使用 sheets = sheetnames(filename)。有关详细信息,请参阅 sheetnames。
示例: 2
示例: "MySheetName"
要从一个包含多个表的文件中读取的表的索引,指定为正整数。默认情况下,detectImportOptions 读取第一个表。
如果指定 TableIndex,detectImportOptions 函数会自动将 TableSelector 设置为等效的 XPath 表达式。
数据类型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64
要读取的表,指定为字符串标量或字符向量。如果未指定此名称-值参量,detectImportOptions 会检测表的位置。
JSON 文件
将要读取的表指定为包含 JSON 指针的字符串标量或字符向量。您必须将 TableSelector 指定为有效的 RFC 6901 JSON 指针。有关详细信息,请参阅 JSON 指针的 IETF 定义。
空字符串 ("") 表示整个 JSON 文件。
示例:TableSelector="/engineID"
XML、Microsoft Word 和 HTML 文件
将要读取的表指定为包含 XPath 表达式的字符串标量或字符向量。您必须将 TableSelector 指定为有效的 XPath 版本 1.0 表达式。
| 选取操作 | 语法 |
|---|---|
| 选择其名称与您要选择的节点匹配的每个节点,而无论它在文档中的位置如何。 | 在名称前加两个正斜杠 (//) 前缀。 |
| 选择属于元素节点的属性的值。 | 在属性前加 at 符号 (@) 前缀。 |
| 在一组节点中选择一个特定节点。 | 在方括号 ([]) 中提供要选择的节点的索引。 |
| 指定运算的优先级。 | 在要首先计算的表达式前后添加圆括号。 |
示例:TableSelector="//table[1]"
要读取的表数据的 JSON 键名称或 XML 节点名称,指定为字符串标量或字符向量。
跨列合并单元格的规则,指定为下表中的值之一。
| 导入规则 | 行为 |
|---|---|
"placeleft" | 将数据放在最左侧单元格中,并基于 您可以在要导入的变量的 |
"placeright" | 将数据放在最右侧单元格中,并基于 您可以在要导入的变量的 |
"duplicate" | 在所有单元格中复制数据。 |
"omitrow" | 忽略出现合并单元格的行。 |
"error" | 显示错误消息并取消导入操作。 |
跨行合并单元格的规则,指定为下表中的值之一。
| 导入规则 | 行为 |
|---|---|
"placetop" | 将数据放在顶部单元格中,并基于 您可以在要导入的变量的 |
"placebottom" | 将数据放在底部单元格中,并基于 您可以在要导入的变量的 |
"duplicate" | 在所有单元格中复制数据。 |
"omitvar" | 省略出现合并单元格的变量。 |
"error" | 显示错误消息并取消导入操作。 |
变量
读取变量名称,指定为数值或逻辑值 1 (true) 或 0 (false)。如果未指定此名称-值参量,detectImportOptions 会自动检测是否存在变量名称。
值 | 描述 |
|---|---|
| 读取变量名称。 |
| 不读取变量名称。创建 |
| 未指定 | 自动检测区域是否包含变量名称。 |
对于文本、电子表格、Microsoft Word 和 HTML 文件,会在标题行后检测变量名称。对于 JSON 文件,从对象键名称中检测变量名称 (自 R2026a 起)。对于 XML 文件,从元素节点和属性名称中检测变量名称。
如果 ReadVariableNames 和 ReadRowNames 都为 true,则 detectImportOptions 将读取的区域第一行第一列中的名称保存为属性 T.Properties.DimensionNames 中的第一个维度名称。
变量名称的规则,指定为以下值之一:
"modify"- 将无效变量名称(由isvarname函数确定)转换为有效的 MATLAB 标识符。此值是文本文件和电子表格文件的默认值。"preserve"- 保留作为无效 MATLAB 标识符的变量名称,如包含空白和非 ASCII 字符的变量名称。此值是 JSON、XML、Microsoft Word 和 HTML 文件的默认值。
变量名称和行名称可以不是有效的 MATLAB 标识符。它们可以包含任何字符,包括空格或非 ASCII 字符。此外,它们可以由任何字符(而不仅仅是字母)开头。
预期的变量数,指定为非负整数。如果未指定此名称-值参量,detectImportOptions 会自动检测变量数。
变量名称的位置,指定为非负整数。
如果 VariableNamesLine 为 0,则 detectImportOptions 不会检测变量名称。否则,detectImportOptions 从指定行中检测变量名称。
如果存在变量名称,且 VariableNamesLine 和 ReadVariableNames 均未指定,则 detectImportOptions 检测哪一行包含变量名称并导入它们。
数据类型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64
变量名称的位置,指定为以下形式之一的字符串标量、字符向量或正整数。
指定 VariableNamesRange 的方式 | 描述 |
|---|---|
起始单元格 | 使用 A1 表示法将变量名称的起始单元格指定为包含列字母和行号的字符串标量或字符向量。 示例: |
矩形范围 | 使用 范围只能跨一行。 示例: |
数值索引 | 使用正行索引指定包含变量名称的行。 示例: |
行范围 | 使用 变量名称必须在一行中。 示例: |
未指定或为空 | 指示没有变量名称。 示例: |
数据类型: string | char | single | double
变量名称的位置,指定为非负整数。
如果 VariableNamesRow 为 0,则 detectImportOptions 不会检测变量名称。否则,detectImportOptions 从指定行中检测变量名称。
如果未指定 VariableNamesRow,且 ReadVariableNames 为 true(默认值),则 detectImportOptions 导入变量名称。如果两者均未指定,则 detectImportOptions 检测是否有一行包含要导入的变量名称。
数据类型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64
要作为表变量读取的 JSON 键名称和 XML 节点名称,指定为字符串数组、字符向量或字符向量元胞数组。如果嵌套节点具有相同的名称,则 VariableNodeNames 选择位于顶层的节点。
示例: VariableNodeNames=["XMLNodeName1","XMLNodeName2"]
要读取的变量,指定为字符串数组、字符向量或字符向量元胞数组。如果未指定此名称-值参量,detectImportOptions 会检测变量的位置。
JSON 文件
(自 R2026a 起)
将要读取的变量指定为包含 JSON 指针的字符串数组、字符向量或字符向量元胞数组。您必须将 VariableSelectors 指定为有效的 RFC 6901 JSON 指针。有关详细信息,请参阅 JSON 指针的 IETF 定义。
VariableSelectors 值中的星号 (*) 表示选择该对应级别的整个数组。
要将键读取为变量,请在 VariableSelectors 中包含字符串 "Keys"。例如,VariableSelectors=["Keys" "/ID" "/Name/FirstName"]。
空字符串 ("") 表示整个 JSON 文件。
示例:VariableSelectors="/enginetemp"
示例:VariableSelectors=["/enginetemp1","/enginetemp2"]
XML 文件
将要读取的变量指定为包含 XPath 表达式的字符串数组、字符向量或字符向量元胞数组。您必须将 VariableSelectors 指定为有效的 XPath 版本 1.0 表达式。例如,假设您要导入 XML 文件 myFile.xml,该文件具有以下结构:
<data>
<table category="ones">
<var>1</var>
<var>2</var>
</table>
<table category="tens">
<var>10</var>
<var>20</var>
</table>
</data>
| 选取操作 | 语法 | 示例 |
|---|---|---|
| 选择其名称与您要选择的节点匹配的每个节点,而无论它在文档中的位置如何。 | 在名称前加两个正斜杠 (//) 前缀。 | 选择每个名为 opts = detectImportOptions("myFile.xml",VariableSelectors="//var") |
| 选择属于元素节点的属性的值。 | 在属性前加 at 符号 (@) 前缀。 | 选择 opts = detectImportOptions("myFile.xml",VariableSelectors="//table/@category") |
| 在一组节点中选择一个特定节点。 | 在方括号 ([]) 中提供要选择的节点的索引。 | 选择每个 opts = detectImportOptions("myFile.xml",VariableSelectors="//table/var[1]") |
| 指定运算的优先级。 | 在要首先计算的表达式前后添加圆括号。 | 选择每个 opts = detectImportOptions("myFile.xml",VariableSelectors="//table/var[1]") |
选择第一个 opts = detectImportOptions("myFile.xml",VariableSelectors="(//table/var)[1]") |
行
读取第一列作为行名称,指定为数值或逻辑值 1 (true) 或 0 (false)。
值 | 描述 |
|---|---|
| 从要读取的区域的第一列读取行名称。 |
| 从区域的第一列读取数据并且不创建行名称。 |
如果 ReadVariableNames 和 ReadRowNames 都为 true,则 detectImportOptions 将读取的区域第一行第一列中的名称保存为属性 T.Properties.DimensionNames 中的第一个维度名称。
行名称的位置,指定为非负整数。
如果 RowNamesColumn 为 0,则 detectImportOptions 不会检测行名称。否则,detectImportOptions 从指定列中检测行名称。
如果未指定 RowNamesColumn,且 ReadRowNames 为 true,则 detectImportOptions 将第一列检测为行名称。
行名称的位置,指定为以下形式之一的字符串标量、字符向量或正整数。
指定 RowNamesRange 的方式 | 描述 |
|---|---|
起始单元格 | 使用 A1 表示法将行名称的起始单元格指定为包含列字母和行号的字符串标量或字符向量。 从起始单元格开始, 示例: |
矩形范围 | 使用 行数必须与数据行的数量匹配,并且范围只能跨一列。 示例: |
列范围 | 使用 行名称必须在单独一列中。 示例: |
数值索引 | 使用正列索引指定包含行名称的列。 示例: |
未指定或为空 | 指示没有行名称。 示例: |
数据类型: string | char | single | double
行名称,指定为字符串标量或字符向量。如果未指定此名称-值参量,detectImportOptions 不会导入行名称,除非 ReadRowNames 为 true。
JSON 文件
(自 R2026a 起)
将行名称指定为包含 JSON 指针的字符串标量或字符向量。您必须将 RowNamesSelector 指定为有效的 RFC 6901 JSON 指针。有关详细信息,请参阅 JSON 指针的 IETF 定义。
示例:RowNamesSelector="/engineID"
XML 文件
将行名称指定为包含 XPath 表达式的字符串标量或字符向量。您必须将 RowNamesSelector 指定为有效的 XPath 版本 1.0 表达式。
示例:RowNamesSelector="/RootNode/ChildNode"
用于从表中选择各行的 XPath 表达式,指定为字符串标量或字符向量。您必须将 RowSelector 指定为有效的 XPath 版本 1.0 表达式。
如果未指定此名称-值参量,detectImportOptions 会检测行的位置。
示例: "/RootNode/ChildNode"
指定行的 XML 节点,指定为字符串标量或字符向量。
数据类型
导入文本数据的类型,指定为以下值之一:
"char"- 将文本数据作为字符向量导入。此值是文本文件和电子表格文件的默认值。"string"- 将文本数据作为字符串数组导入。此值是 JSON、XML、Microsoft Word 和 HTML 文件的默认值。
导入的日期和时间数据的类型,指定为下表中的值之一。
| 值 | 生成的数据类型 |
|---|---|
"datetime" | MATLAB |
"text" | 数据类型取决于
|
"exceldatenum" | Excel 序列日期值 此值仅对电子表格文件有效。 序列日期值是一个数字,它等于从给定的参照日期开始计算的天数。Excel 序列日期值与 MATLAB 序列日期值使用不同的参照日期。有关 Excel 日期的详细信息,请参阅 Excel 中的 1900 和 1904 日期系统之间的差异。 |
导入的持续时间数据的类型,指定为下表中的值之一。
| 值 | 生成的数据类型 |
|---|---|
"duration" | MATLAB |
"text" | 数据类型取决于
|
导入的十六进制数据的类型,指定为下表中的值之一。
值 | 生成的数据类型 |
|---|---|
| 检测到的数据类型; |
| 未更改的输入文本 |
| 8 位有符号整数 |
| 16 位有符号整数 |
| 32 位有符号整数 |
| 64 位有符号整数 |
| 8 位无符号整数 |
| 16 位无符号整数 |
| 32 位无符号整数 |
| 64 位无符号整数 |
输入文件能够以文本形式表示十六进制值,使用 0x 或 0X 作为前缀,以字符 0-9、a-f 和 A-F 作为数字。大写和小写字母表示相同的数字 - 例如,"0xf" 和 "0xF" 都表示 15。
导入的二进制数据的类型,指定为下表中的值之一。
值 | 生成的数据类型 |
|---|---|
| 检测到的数据类型; |
| 未更改的输入文本 |
| 8 位有符号整数 |
| 16 位有符号整数 |
| 32 位有符号整数 |
| 64 位有符号整数 |
| 8 位无符号整数 |
| 16 位无符号整数 |
| 32 位无符号整数 |
| 64 位无符号整数 |
输入文件能够以文本形式表示二进制值,使用 0b 或 0B 作为前缀,以字符 0 和 1 作为数字。例如,0b11111111 表示 255。
用于读取日期的区域设置,指定为字符串标量或 形式的字符向量,其中:xx_YY
xx是指示语言的小写 ISO 639-1 双字母代码。YY是指示国家/地区的大写 ISO 3166-1 alpha-2 代码。
使用 DateLocale 指定 detectImportOptions 解释月份和星期几的名称及缩写所用的区域设置。
下表列出了区域设置的某些常用值。
| 区域设置 | 语言 | 国家/地区 |
|---|---|---|
"de_DE" | 德语 | 德国 |
"en_GB" | 英语 | 英国 |
"en_US" | 英语 | 美国 |
"es_ES" | 西班牙语 | 西班牙 |
"fr_FR" | 法语 | 法国 |
"it_IT" | 意大利语 | 意大利 |
"ja_JP" | 日语 | 日本 |
"ko_KR" | 韩语 | 韩国 |
"nl_NL" | 荷兰 | 荷兰 |
"zh_CN" | 简体中文 | 中国 |
是否从数值变量中删除非数值字符,指定为数值或逻辑值 1 (true) 或 0 (false)。例如,如果 TrimNonNumeric 为 true,则 detectImportOptions 将 "$500/-" 检测为 500。
数值变量中的小数分隔符,指定为字符串标量或单字符字符向量。分隔符用于区分数值的整数部分和小数部分。例如,如果分隔符是 ",",则 detectImportOptions 将文本 "3,14159" 检测为数值 3.14159。
当转换为整数数据类型时,detectImportOptions 将具有小数部分的数值舍入到最接近的整数。DecimalSeparator 不接受数字作为值。
数值变量中的千分位字符,指定为字符串标量或字符向量。千分位字符作为视觉分隔符,用于每隔三位对数值进行分组。例如,如果千分位字符是 ",",则 detectImportOptions 将文本 "1,234,000" 检测为 1234000。
指数字符,指定为字符串标量或字符向量。默认的指数字符为 e、E、d 和 D。
示例: "eE"
数据清洗
视为缺失值的占位符文本,指定为字符串数组、字符向量或字符向量元胞数组。detectImportOptions 将此占位符文本对应的表元素检测为与元素数据类型关联的缺失值。
示例: "N/A"
示例: [".","NA","N/A"]
导入错误的规则,指定为下表中的值之一。当 detectImportOptions 无法将文本元素转换为预期的数据类型时,会发生导入错误。
| 导入错误规则 | 行为 |
|---|---|
"fill" | 用 您可以在要导入的变量的 |
"error" | 显示错误消息并取消导入操作。 |
"omitrow" | 忽略发生错误的行。 |
"omitvar" | 忽略发生错误的变量。 |
缺失数据的规则,指定为下表中的值之一。
| 缺失规则 | 行为 |
|---|---|
"fill" | 用 您可以在要导入的变量的 |
"error" | 显示错误消息并取消导入操作。 |
"omitrow" | 忽略包含缺失数据的行。 |
"omitvar" | 忽略包含缺失数据的变量。 |
对于文本文件、Microsoft Word 文件和 HTML 文件,如果行中不存在预期字段,则认为数据缺失。由于缺失字段会导致行的后续元素移动字段,因此缺失的字段在行的末尾解释。
对于电子表格文件,如果行中的预期字段没有数据,并且字段类型为空白或空,则被视为数据缺失。
对于 JSON 和 XML 文件,如果预期的节点不存在,则认为数据缺失。
数据中附加列的规则,指定为下表中的值之一。如果一行的列数多于预期,则 detectImportOptions 认为存在附加列。
| 附加列规则 | 行为 |
|---|---|
"addvars" | 要导入附加列,需要创建新变量。如果有
|
"ignore" | 忽略附加列数据。 |
"wrap" | 将附加列数据换行到新记录中。此操作不会更改变量的数量。 |
"error" | 显示错误消息并取消导入操作。 |
数据中空行的规则,指定为下表中的值之一。如果一行仅包含空白字符,则 detectImportOptions 认为它是空行。
| 空行规则 | 行为 |
|---|---|
"skip" | 跳过空行。 |
"read" | 导入空行。detectImportOptions 使用 VariableWidths、VariableOptions、MissingRule 中指定的值及其他相关参量(如 Whitespace)来解析空行。 |
"error" | 显示错误消息并取消导入操作。 |
数据中空行的规则,指定为下表中的值之一。
| 空行规则 | 行为 |
|---|---|
"skip" | 跳过空行。 |
"read" | 导入空行。detectImportOptions 使用 VariableWidths、VariableOptions、MissingRule 和其他相关参量(如 Whitespace)中指定的值解析空行。 |
"error" | 显示错误消息并取消导入操作。 |
数据中空列的规则,指定为下表中的值之一。
| 空列规则 | 行为 |
|---|---|
"skip" | 跳过空列。 |
"read" | 导入空列。detectImportOptions 使用 VariableWidths、VariableOptions、MissingRule 和其他相关参量(如 Whitespace)中指定的值解析空列。 |
"error" | 显示错误消息并取消导入操作。 |
数据中部分字段的规则,指定为下表中的值之一。如果一个字段到达行尾的字符数少于预期宽度,则 detectImportOptions 认为该字段为部分填充。此名称-值参量仅适用于具有固定宽度的字段。
| 不完整字段规则 | 行为 |
|---|---|
"keep" | 保留不完整字段数据并将文本转换为正确的数据类型。 如果 |
"fill" | 用 您可以在要导入的变量的 |
"omitrow" | 忽略包含不完整数据的行。 |
"omitvar" | 忽略包含不完整数据的变量。 |
"wrap" | 开始读取下一行字符。 |
"error" | 显示错误消息并取消导入操作。 |
文件信息
文件的类型,指定为此表中的一个值。
| 值 | 文件类型 |
|---|---|
"spreadsheet" | 电子表格文件 |
"text" | 文本文件 |
"delimitedtext" | 带分隔符的文本文件 |
"fixedwidth" | 等宽文本文件 |
"json" | JSON 文件 |
"xml" | XML 文件 |
"worddocument" | Microsoft Word 文档 |
"html" | HTML 文件 |
当 filename 不包含文件扩展名或其扩展名不在此列表中时,指定此名称-值参量:
.txt、.dat或.csv(文本文件).xls、.xlsb、.xlsm、.xlsx、.xltm、.xltx或.ods(电子表格文件).json(JSON 文件).xml(适用于 XML 文件).docx(Microsoft Word 文档).html、.xhtml或.htm(HTML 文件)
与文件关联的字符编码方案,指定为 "system" 或标准字符编码方案名称。如果您没有指定任何编码,则 detectImportOptions 在读取文件时将使用自动字符集检测来确定编码。
自 R2022a 起
HTTP 或 HTTPS 请求选项,指定为 weboptions 对象。当指定的 filename 是包含协议类型 "http://" 或 "https://" 的 Internet URL 时,由 weboptions 对象确定如何导入数据。
文本解析
字段分隔符,指定为字符串数组、字符向量或字符向量元胞数组。将 Delimiter 指定为任何有效字符(如逗号 "," 或句点 ".")。
下表列出了一些常用的字段分隔符。
设定符 | 字段分隔符 |
|---|---|
| 逗号 |
| 空格 |
| 制表符 |
| 分号 |
| 垂直条 |
| 未指定 | 如果未指定此名称-值参量, |
要将多个字符视为单个分隔符,请将 Delimiter 指定为字符串数组或字符向量元胞数组。如果要将未知数量的连续分隔符视为一个分隔符,请指定 ConsecutiveDelimitersRule="join"。
Delimiter 仅对带分隔符的文本文件有效,而对等宽文本文件无效。
行尾字符,指定为字符串数组、字符向量或字符向量元胞数组。常见的行尾字符包括换行符 ("\n") 和回车符 ("\r")。如果指定 "\r\n",则 detectImportOptions 会将两者的组合 (\r\n) 视为行尾字符。如果指定 {"\r\n", "\r", "\n"},则 \r、\n 和 \r\n 都被视为行尾字符。
默认的行尾序列是 \n、\r 或 \r\n,具体取决于您的文件的内容。
视为空白的字符,指定为包含一个或多个字符的字符串标量或字符向量。
下表显示如何表示无法使用普通文本输入的特殊字符。
特殊字符 | 表示形式 |
|---|---|
百分号 |
|
反斜杠 |
|
警报 |
|
退格符 |
|
换页符 |
|
换行符 |
|
回车符 |
|
水平制表符 |
|
垂直制表符 |
|
其 Unicode® 数值可以通过十六进制数 |
|
其 Unicode 数值可以通过八进制数 |
|
示例: " _"
示例: "?!.,"
要忽略的文本的注释指示符,指定为字符串数组、字符向量或字符向量元胞数组。
例如,指定一个字符(如 "%")以忽略同一行上该字符后面的文本。指定字符串数组(如 ["/*","*/"])以忽略序列之间的任何文本。
detectImportOptions 仅在每行的开头(而不是在行内)检查注释。
示例: ["/*","*/"]
带分隔符的文本文件中的前导分隔符的规则,指定为下表中的值之一。
| 规则 | 行为 |
|---|---|
"keep" | 保留分隔符。 |
"ignore" | 忽略分隔符。 |
"error" | 显示错误消息并取消导入操作。 |
带分隔符的文本文件中的尾部分隔符的规则,指定为下表中的值之一。
| 规则 | 行为 |
|---|---|
"keep" | 保留分隔符。 |
"ignore" | 忽略分隔符。 |
"error" | 显示错误消息并取消导入操作。 |
带分隔符的文本文件中的连续分隔符的规则,指定为下表中的值之一。
| 规则 | 行为 |
|---|---|
"split" | 将连续分隔符拆分为多个字段。 |
"join" | 将多个分隔符合并成一个分隔符。 |
"error" | 显示错误消息并取消导入操作。 |
是否将多个分隔符视为一个分隔符,指定为数值或逻辑值 1 (true) 或 0 (false)。
等宽文本文件中变量的字段宽度,指定为正整数向量。每个整数对应于一个字段中构成变量的字符数。
示例: [10,7,4,26,7]
JSON 和 XML 解析
自 R2026a 起
解析时如何遵守 JSON 标准的严格,指定为以下值之一:
"lenient"- 将AllowComments,AllowInfAndNaN和AllowTrailingCommas的值设置为true。"strict"- 将AllowComments,AllowInfAndNaN和AllowTrailingCommas的值设置为false。
自 R2026a 起
允许输入文件中的注释,指定为以下值之一:
数值或逻辑值
1(true) - 注释在导入过程中不会导致错误。文件中的注释不被视为数据,不会读入 MATLAB。对于单行注释,注释可以“//”开头;对于多行注释,注释可以“/*”开头,以“*/”结尾。数值或逻辑值
0(false) - 注释会在导入过程中导致错误。
自 R2026a 起
读取输入文件中的 Inf 和 NaN 值,指定为以下值之一:
数值或逻辑值
1(true) -Inf和NaN值(包括Infinity、-Inf和-Infinity)会读入 MATLAB 中。数值或逻辑值
0(false) -Inf和NaN值在导入过程中会导致错误。
自 R2026a 起
读取输入文件中的尾部逗号,指定为以下值之一:
数值或逻辑值
1(true) - JSON 数组或 JSON 对象后的尾部逗号不会在导入过程中导致错误。数值或逻辑值
0(false) - 尾部逗号会在导入过程中导致错误。
表的给定行中的重复 JSON (自 R2026a 起) 或 XML 节点的规则,指定为下表中的值之一。对于 JSON 文件,当 VariableSelectors 名称-值参量包含指向数组的 JSON 指针时,此规则适用。数组项被视为重复节点。
规则 | 行为 |
|---|---|
"addcol" | 为变量中的每个重复节点添加列以在关联变量中创建一个矩阵。 例如: 输入 XML 数据 <table>
<row>
<Var1>1</Var1>
<Var2>2</Var2>
<Var3>3</Var3>
<Var1>11</Var1>
<Var1>111</Var1>
</row>
<row>
<Var1>4</Var1>
<Var2>5</Var2>
<Var3>6</Var3>
</row>
<row>
<Var1>7</Var1>
<Var2>8</Var2>
<Var3>9</Var3>
</row>
</table>输出表 Var1 Var2 Var3
_______________ ____ ____
1 11 111 2 3
4 NaN NaN 5 6
7 NaN NaN 8 9 |
"ignore" | 跳过重复节点。 |
"error" | 显示错误消息并取消导入操作。 |
是否将 XML 属性作为变量导入输出表中,指定为数值或逻辑值 1 (true) 或 0 (false)。默认情况下,detectImportOptions 在输出表中将 XML 属性检测为变量。
用于区分输出表中属性和元素的后缀,指定为字符串标量或字符向量。此参量指定 detectImportOptions 追加到与输入 XML 文件中的属性对应的所有表变量的后缀。如果未指定 AttributeSuffix,则 detectImportOptions 将后缀 "Attribute" 追加到与输入 XML 文件中的属性对应的所有变量名称。
示例: "_att"
注册的 XML 命名空间前缀集,指定为由前缀及其关联 URL 组成的 N×2 字符串数组。detectImportOptions 在计算 XML 文件中的 XPath 表达式时使用这些前缀。
当您还计算由选择器名称-值参量(如 VariableSelectors)指定的 XPath 表达式时,可以使用 RegisteredNamespaces。
默认情况下,detectImportOptions 自动检测用于 XPath 计算的命名空间前缀。要选择具有未声明的命名空间前缀的 XML 节点,请使用 RegisteredNamespaces 名称-值参量为命名空间前缀注册自定义命名空间 URL。例如,在不包含命名空间前缀的 XML 文件中将前缀 myprefix 分配给 URL https://www.mathworks.com。
T = detectImportOptions(filename,VariableSelectors="/myprefix:Data", ... RegisteredNamespaces=["myprefix","https://www.mathworks.com"])
变量元数据
变量单位的位置,指定为非负整数。
如果 VariableUnitsLine 为 0,则 detectImportOptions 不会检测变量单位。否则,detectImportOptions 从指定行中检测变量单位。
数据类型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64
变量单位的位置,指定为以下形式之一的字符串标量、字符向量或正整数。
指定 VariableUnitsRange 的方式 | 描述 |
|---|---|
起始单元格 | 使用 A1 表示法将变量单位的起始单元格指定为包含列字母和行号的字符串标量或字符向量。 从起始单元格开始, 示例: |
矩形范围 | 使用 范围只能跨一行。 示例: |
数值索引 | 使用正行索引指定包含变量单位的行。 示例: |
行范围 | 使用 变量单位必须在一行中。 示例: |
未指定或为空 | 指示没有变量单位。 示例: |
数据类型: string | char | single | double
变量单位的位置,指定为非负整数。
如果 VariableUnitsRow 为 0,则 detectImportOptions 不会检测变量单位。否则,detectImportOptions 从指定行中检测变量单位。
数据类型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64
变量单位,指定为字符串标量或字符向量。如果未指定此名称-值参量,detectImportOptions 不导入变量单位。
JSON 文件
(自 R2026a 起)
将变量单位指定为包含 JSON 指针的字符串标量或字符向量。您必须将 VariableUnitsSelector 指定为有效的 RFC 6901 JSON 指针。有关详细信息,请参阅 JSON 指针的 IETF 定义。
示例:VariableUnitsSelector="/statuses/metadata/units"
XML 文件
将变量单位指定为包含 XPath 表达式的字符串标量或字符向量。您必须将 VariableUnitsSelector 指定为有效的 XPath 版本 1.0 表达式。
示例:VariableUnitsSelector="/RootNode/ChildNode"
示例:VariableUnitsSelector="//table[1]/units/"
变量描述的位置,指定为非负整数。
如果 VariableDescriptionsLine 为 0,则 detectImportOptions 不会检测变量描述。否则,detectImportOptions 从指定行中检测变量描述。
数据类型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64
变量描述的位置,指定为以下形式之一的字符串标量、字符向量或正整数。
指定 VariableDescriptionsRange 的方式 | 描述 |
|---|---|
起始单元格 | 使用 A1 表示法将变量描述的起始单元格指定为包含列字母和行号的字符串标量或字符向量。 从起始单元格开始, 示例: |
矩形范围 | 使用 范围只能跨一行。 示例: |
行范围 | 使用 变量描述必须在一行中。 示例: |
数值索引 | 使用正行索引指定包含描述的行。 示例: |
未指定或为空 | 指示没有变量描述。 示例: |
数据类型: string | char | single | double
变量描述的位置,指定为非负整数。
如果 VariableDescriptionsRow 为 0,则 detectImportOptions 不会检测变量描述。否则,detectImportOptions 从指定行中检测变量描述。
数据类型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64
变量描述,指定为字符串标量或字符向量。如果未指定此名称-值参量,detectImportOptions 不导入变量描述。
JSON 文件
(自 R2026a 起)
将变量描述指定为包含 JSON 指针的字符串标量或字符向量。您必须将 VariableDescriptionsSelector 指定为有效的 RFC 6901 JSON 指针。有关详细信息,请参阅 JSON 指针的 IETF 定义。
示例:VariableDescriptionsSelector="/statuses/metadata"
XML 文件
将变量描述指定为包含 XPath 表达式的字符串标量或字符向量。您必须将 VariableDescriptionsSelector 指定为有效的 XPath 版本 1.0 表达式。
示例:VariableDescriptionsSelector="/RootNode/RowNode/@Name"
示例:VariableDescriptionsSelector="//table[1]/descriptions/*"
输出参量
指定文件的导入选项,以 SpreadsheetImportOptions、DelimitedTextImportOptions、FixedWidthImportOptions、JSONImportOptions 或 XMLImportOptions 对象形式返回。选项对象的类型取决于指定文件的类型。
对于文本文件(
.txt、.dat或.csv),函数返回一个DelimitedTextImportOptions或FixedWidthImportOptions对象。对于电子表格文件(
.xls、.xlsb、.xlsm、.xlsx、.xltm、.xltx或.ods),函数返回一个SpreadsheetImportOptions对象。对于 JSON 文件 (
.json),该函数返回一个JSONImportOptions对象。对于 XML 文件 (
.xml),该函数返回一个XMLImportOptions对象。
提示
在创建导入选项对象后更新属性值:不推荐使用圆点表示法更新由
detectImportOptions创建的导入选项对象的属性。当您使用圆点表示法设置属性时,MATLAB 不会重新检测文件的所有导入选项。因此,要更新和重新检测所有属性,必须使用名称-值参量指定新值。例如,按如下方式更新ConsecutiveDelimitersRule属性的值并重新检测导入选项。opts = detectImportOptions(__,'ConsecutiveDelimitersRule','join')
使用 XPath 选择器指定要导入 XML 输入文档的哪些元素。例如,假设您要导入 XML 文件
myFile.xml,该文件具有以下结构:下表提供 XPath 选择器名称-值参量(例如<data> <table category="ones"> <var>1</var> <var>2</var> </table> <table category="tens"> <var>10</var> <var>20</var> </table> </data>VariableSelectors或TableSelector)支持的 XPath 语法。选取操作 语法 示例 结果 选择其名称与您要选择的节点匹配的每个节点,而无论它在文档中的位置如何。 在名称前加两个正斜杠 ( //) 前缀。data = readtable('myFile.xml', 'VariableSelectors', '//var')
data = 4×1 table var ___ 1 2 10 20读取属于元素节点的属性的值。 在属性前加 at 符号 ( @) 前缀。data = readtable('myFile.xml', 'VariableSelectors', '//table/@category')
data = 2×1 table categoryAttribute _________________ "ones" "tens"在一组节点中选择一个特定节点。 在方括号 ( []) 中提供要选择的节点的索引。data = readtable('myFile.xml', 'TableSelector', '//table[1]')
data = 2×1 table var ___ 1 2指定运算的优先级。 在要首先计算的表达式前后添加圆括号。 data = readtable('myFile.xml', 'VariableSelectors', '//table/var[1]')
data = 2×1 table var ___ 1 10data = readtable('myFile.xml', 'VariableSelectors', '(//table/var)[1]')
data = table var ___ 1
版本历史记录
在 R2016b 中推出您可以检测 JSON 文件的导入选项。指定可选的名称-值参量以控制导入行为。例如,如果您想要在导入过程中输入 JSON 文件中的注释导致错误,请将 AllowComments 设置为 false。
您可以将压缩和存档文件中的数据作为表读取。
从电子表格导入数据时,您可以使用 MergedCellRowRule 和 MergedCellColumnRule 名称-值参量来指定 detectImportOptions 如何导入跨行和列合并的单元格。
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
选择网站
选择网站以获取翻译的可用内容,以及查看当地活动和优惠。根据您的位置,我们建议您选择:。
您也可以从以下列表中选择网站:
如何获得最佳网站性能
选择中国网站(中文或英文)以获得最佳网站性能。其他 MathWorks 国家/地区网站并未针对您所在位置的访问进行优化。
美洲
- América Latina (Español)
- Canada (English)
- United States (English)
欧洲
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)