导出附件 (数据管理)

摘要

用于将文件附件从地理数据库要素类或者表的记录导出到指定文件夹。 您还可以根据指定属性列中的属性值将附件导出到子目录。 可以使用一个或多个字段属性值对已导出附件进行重命名。

了解有关使用“附件”地理处理工具的详细信息

使用情况

  • 此工具支持选择。 如果未选择任何记录,则将导出所有附件。

  • 已导出附件文件的文件类型将与添加至地理数据库时的文件类型相同。 例如,如果附件为 .pdf 文件,则已导出文件将为 .pdf

  • 通过指定子目录字段参数的值,可以将附件导出至每条记录的子目录。 该字段中的值将用于命名子目录。 例如,如果属性表包含 3 行,并且所选字段的值为 ATL、TPA 和 SLC,则将创建具有这些名称的 3 个子目录。 每个值的所有附件将下载到各自的子目录中。

  • 为了避免导出文件中的名称冲突,该工具将在适当的时候向文件名添加一个增量数字。 如果字段值为 null,则在文件名中使用单词 None

  • 当导出附件时,将在输出子目录和文件名中替换字段值中的以下字符:

    字段值字符替换为

    正斜线 (/)

    连字符 (-)

    双反斜线 (\\)

    连字符 (-)

    竖线或垂直线 (|)

    连字符 (-)

    星号 (*)

    下划线 (_)

    小于 (<)

    下划线 (_)

    大于 (>)

    下划线 (_)

    问号 (?)

    下划线 (_)

    冒号 (:)

    逗号后跟一个空格 (, )

参数

标注说明数据类型
输入数据集

将从中导出附件的地理数据库表或要素类。

输入必须存储在 10.0 或更高版本的地理数据库中,而且表必须启用附件。

Table View
输出位置

将导出附件文件的文件夹。

Folder
子目录字段
(可选)

输入数据集参数值中的字段,将用于创建子目录名称。

Field
名称格式
(可选)

指定将用于命名已导出附件的格式。

  • 使用原始文件名输出文件名将使用在地理数据库中存储的原始文件名。
  • 仅使用字段值输出文件名将使用名称字段参数值的字段值。 将使用下划线来串连多个值。
  • 添加字段值作为前缀输出文件名将使用原始文件名以及相应前缀,该前缀来自名称字段参数值的字段值。
  • 添加字段值作为后缀输出文件名将使用原始文件名以及相应后缀,该后缀来自名称字段参数值的字段值。 将使用下划线来串连多个值。
String
名称字段
(可选)

输入数据集参数值中的字段名称,将用于重命名已导出附件。 如果指定多个字段,则输出文件将按照指定字段值的顺序使用通过下划线串连的这些字段值。

例如,如果指定 2 个字段名称,并且名称格式参数设置为仅使用字段值,则第一条记录的字段值为 MainStreet,附件为 .jpg 文件,已导出文件将命名为 Main_Street.jpg

名称格式参数设置为仅使用字段值添加字段值作为前缀添加字段值作为后缀时,将会启用此参数。

Field

派生输出

标注说明数据类型
输出目录

已更新的文件夹。

Folder

arcpy.management.ExportAttachments(in_dataset, out_location, {subdirectory_field}, {name_format}, {name_fields})
名称说明数据类型
in_dataset

将从中导出附件的地理数据库表或要素类。

输入必须存储在 10.0 或更高版本的地理数据库中,而且表必须启用附件。

Table View
out_location

将导出附件文件的文件夹。

Folder
subdirectory_field
(可选)

in_dataset 参数值中的字段,将用于创建子目录名称。

Field
name_format
(可选)

指定将用于命名已导出附件的格式。

  • ORIGINAL输出文件名将使用在地理数据库中存储的原始文件名。
  • REPLACE输出文件名将使用 name_fields 参数值的字段值。
  • PREFIX输出文件名将使用原始文件名以及相应前缀,该前缀来自 name_fields 参数值的字段值。
  • SUFFIX输出文件名将使用原始文件名以及相应后缀,该后缀来自 name_fields 参数值的字段值。
String
name_fields
[name_fields,...]
(可选)

in_dataset 参数值中的字段,将用于重命名已导出附件。 如果指定多个字段,则输出文件将按照指定字段值的顺序使用通过下划线串连的这些字段值。

例如,如果指定 2 个字段名称,并且 name_format 参数设置为 REPLACE,则第一条记录的字段值为 MainStreet,附件为 .jpg 文件,已导出文件将命名为 Main_Street.jpg

name_format 参数设置为 REPLACEPREFIXSUFFIX 时,将会启用此参数。

Field

派生输出

名称说明数据类型
out_dirs

已更新的文件夹。

Folder

代码示例

ExportAttachments 示例 1(Python 窗口)

以下代码片段说明了如何在 Python 窗口中使用 ExportAttachments 函数。

import arcpy
arcpy.management.ExportAttachments(r"C:\Data\National.gdb\Airports",
                                   r"C:\OutputFolder", 'CODE', 'REPLACE', ['NAME', 'CODE'])
ExportAttachments 示例 2(独立脚本)

在数据源上执行选择后,可以使用 ExportAttachments 函数以导出特定要素的附件。

import arcpy

# Import system variables
import arcpy

# Set the workspace
arcpy.env.workspace = r"C:\National.gdb"

# Set local variables
in_dataset = "Airports"
out_location = r"C:\Output_Images"
subdir_field = 'Code'
output_names = 'REPLACE'
name_fields = ['NAME', 'CODE']

# Select the Salt Lake City Airport and download all attachments to a subdirectory named SLC.
layerSelection = arcpy.management.SelectLayerByAttribute(in_dataset, 'NEW_SELECTION',
                                                         "Name = 'Salt Lake City'")

# Export the attachments with the layer selection set and renamed using field values.
arcpy.management.ExportAttachments(layerSelection, out_location, subdir_field,
                                   output_names, name_fields)

环境

此工具不使用任何地理处理环境。

相关主题