Table (.dat)

背景

    • 通用的表格数据.
    • 存储数值和文本信息,格式化为一个表格.
    • 支持用户定义的字段和记录分隔符、字段分隔符、货币令牌以及数字格式.
    • 纯文本格式.

Import 与 Export

  • Import["file.dat"] 导入一个列表数据文件并返回列表的列表.
  • Export["file.dat",expr] 把一个二维数组或一个 Grid 导出至 Table 文件.
  • Import["file.dat"] 返回一个字符串和数字的二维数组,表示存储在文件中的行与列.
  • Export["file.dat",array] 使用每个参数的 CFormarray 格式化为行和列.
  • 当导出到 "Table" 格式,Wolfram 语言自动把任意表达式转换成列表的列表.
  • Import["file.dat",elem] 从 Table 文件中导入指定的参数.
  • Import["file.dat",{elem,suba,subb,}] 导入一个子参数.
  • Import["file.dat",{{elem1,elem2,}}] 导入多个参数.
  • 导入格式可以由 Import["file","Table"]Import["file",{"Table",elem,}] 指定.
  • Export["file.dat",expr, elem] 通过把 expr 作为指定参数 elem 创建一个 Table 文件.
  • Export["file.dat",{expr1,expr2,},{{elem1,elem2,}}] 把每一个 expri 指定为相应的 elemi.
  • Export["file.dat",expr,opt1->val1,] 导出具有指定值的指定选项参数的 expr.
  • Export["file.dat",{elem1->expr1,elem2->expr2,},"Rules"] 使用规则指定要导出的参数.
  • 请到以下参考页面了解完整的基本信息:
  • Import, Export从文件导入或导出到文件
    CloudImport, CloudExport从云对象导入或导出到云对象
    ImportString, ExportString从字符串导入或导出到字符串
    ImportByteArray, ExportByteArray从字节数组导入或导出到字节数组

笔记本界面

  • 选择另存为 把笔记本的选择部分导出为一个 Table 文件.

Import 参数

  • Import 的通用参数:
  • "Elements" 该文件可用的参数和选项列表
    "Summary"文件摘要
    "Rules"所有可用参数的规则列表
  • 表示数据的参数:
  • "Data"二维数组,表示行和列
    "Grid"作为一个 Grid 对象的表格数据
  • 默认情况下,ImportExport 使用"Data"参数.

选项

  • ImportExport 选项:
  • "TextDelimiters"Automatic用于分隔非数字字段的字符串或字符串列表
  • 默认情况下,Export 划分包含具有双引号字符的字段分隔符.
  • 当具有显式设置 "TextDelimiters"Export 总是使用指定的字符串令牌分隔文本字段,有效地循环于分隔符列表.
  • "TextDelimiters"->{"<",">"}Export 封装文本字段于尖括号内.
  • 默认情况下,不导入双引号字符分隔的文本字段.
  • Import 选项:
  • CharacterEncoding"ISOLatin1"文件中行字符串使用的编码
    "CurrencyTokens"{{"$", "£", "¥", "€"}, {"c", "¢", "p", "F"}}当导入数值值时,跳过的货币单位
    "DateStringFormat"NoneDateString 规范给出的日期格式
    "FieldSeparators"{" ","t"}分隔列的字符串令牌
    "HeaderLines"0文件开头处跳过的行数
    "IgnoreEmptyLines"False是否忽略空行
    "LineSeparators"{"r\n","n","\r"}分隔行的字符串令牌
    "NumberPoint""."用于小数点的字符串
    "NumberSigns"{"-","+"}负数和正数的符号字符串
    "Numeric"True如果可能的话是否按数字导入数据字段
    "RepeatedSeparators"True是否解析字段分隔符序列为一单个分隔符
  • CharacterEncoding -> AutomaticImport 尝试推断文件的字符编码.
  • Import 把由 "DateStringFormat" 选项指定格式化的表格项转换成一个 DateObject.
  • 默认情况下,空行和仅包含空白字符的行被转换成以空白列表. 如果 "IgnoreEmptyLines" 设为 TrueImport 将跳过空行.
  • "Numeric" -> False,数字将按它们在文件中显示的字符串形式导入.
  • 当默认设置为 "LineSeparators"Import 自动识别行分隔字符编码的所有常用规范.
  • Export 选项:
  • AlignmentNone在表格列中数据是如何对齐的
    CharacterEncoding"UTF8"文件中行字符串使用的编码
    "FieldSeparators""\t"用于分隔列的字符串令牌
    "TableHeadings"None表格列与行的标头
  • Alignment 的可能设定为 NoneLeftCenterRight.
  • "TableHeadings"可被设为下列值:
  • None没有标签
    Automatic给出列与行的连续整数标签
    {"col1","col2",}列标签列表
    {rhead,chead}指定行与列的独立标签
  • Export 使用运行 Wolfram 语言的计算机系统的常用规范编码行分隔字符.

范例

基本范例  (5)

将随机数数组导出为一个表格:

导出一个格式化为网格的表格:

导入产生的文件:

使用 ExportString 创建一个格式化版本的数组:

导入一个使用数值条作为字段分隔符的表格数据文件:

如果指定日期格式,Import 则将日期转换成 Wolfram 语言 DateObject 规范:

创建一个包含货币令牌的 UTF-8 编码文本文件:

当导入该文件,自动跳过货币令牌:

当导出为 Table 格式,Wolfram 语言自动将表达式转换成列表的列表: