要素类至要素类 (转换)
摘要
将 shapefile、coverage 要素类或地理数据库要素类转换为 shapefile 或地理数据库要素类。
用法
-
字段映射参数控制输入要素中的输入字段写入输出要素的方式。
- 要在转换过程中删除字段,请从字段映射中将输入字段删除。该操作不会影响输入要素类。
- 如果创建了新字段,并且输出字段的内容是根据多个(名称不同的)字段生成的,则单个输出字段可根据多个输入字段生成。
- 输出字段的数据类型将默认为与其所遇到的第一个名称相同的输入字段的数据类型相同。可以随时手动将该数据类型更改为任意有效的数据类型。如果使用工具的对话框,则将列出所有有效的数据类型。
- 如果使用合并规则,则可自行指定分隔符,例如,空格、逗号、句点和短划线等。如果想要使用空格,请确保鼠标指针位于输入框的起始位置处,然后单击空格键。
- 可用的“合并规则”有很多:第一个、最后一个、连接、总和、平均值、中值、最小值、最大值和标准差。
- 格式选项仅适用于文本型输入字段(且与“连接”合并规则结合使用)。可以指定起点和终点等。使用格式,可以将更改应用到所选的输入字段或者所有相同的输入字段。
- 不应对单个输入执行标准差计算,因为数字不能被零除,因此标准差不适用于单个输入。
-
复制要素工具还可用于将 shapefile、coverage 要素类或地理数据库(文件、个人或 ArcSDE)要素类转换为 shapefile 或地理数据库(文件、个人或 ArcSDE)要素类。
-
可用于选择要素子集的 SQL 表达式。有关表达式参数的语法的更多详细信息,请参阅构建 SQL 表达式或 SQL 参考。
将包含属性域的地理数据库数据转换为 shapefile、dBase 表或 coverage 时,域代码和域描述都将包含在输出中。域描述将位于在域字段之后命名的新字段中,字段名称的末端追加 _DESC。
语法
参数 | 说明 | 数据类型 |
in_features |
要转换的要素类或要素图层。 | Feature Layer |
out_path |
将创建输出要素类所在的位置。该位置可以是地理数据库或文件夹。如果输出位置是文件夹,则输出将为 shapefile。 | Workspace;Feature Dataset |
out_name |
输出要素类的名称。 | String |
where_clause (可选) |
用于选择要素子集的 SQL 表达式。表达式的语法会因数据源的不同而稍有不同。例如,如果要查询文件或 ArcSDE 地理数据库、shapefile 或 coverage,字段名需用双引号: "MY_FIELD" 如果要查询个人地理数据库,需将字段用方括号括起: [MY_FIELD] 在 Python 中,字符串用成对的单引号或双引号括起。要创建含有引号的字符串(常见于 SQL 表达式中的 WHERE 子句),可以对引号进行转义(使用反斜线)或对字符串使用三重引号。例如,如果所需的 WHERE 子句为 "CITY_NAME" = 'Chicago' 可以将整个字符串用双引号括起,然后如下所示对内部双引号进行转义: " \"CITY_NAME\" = 'Chicago' " 或者可以将整个字符串用单引号括起,然后如下所示对内部单引号进行转义: ' "CITY_NAME" = \'Chicago\' ' 或者不进行转义,而将整个字符串用三重引号括起: """ "CITY_NAME" = 'Chicago' """ 有关 SQL 语法及其在不同数据源中的差异的详细信息,请参阅帮助主题在 ArcGIS 中使用查询表达式的 SQL 参考。 | SQL Expression |
field_mapping (可选) |
从输入要素类中选择的字段和字段内容。您可添加、重命名或删除输出字段,还可设置诸如数据类型和合并规则等属性。 合并规则用于指定如何将两个或更多个输入字段的值合并为一个输出值。有以下几个合并规则可供使用:
| Field Mappings |
config_keyword (可选) |
指定文件地理数据库和 ArcSDE 地理数据库的存储参数(配置)。个人地理数据库不使用配置关键字。 对于企业级 ArcSDE,ArcSDE 配置关键字由数据库管理员设置。 | String |
代码示例
以下 Python 窗口脚本演示了如何在即时模式下使用 FeatureClassToFeatureClass 工具。
import arcpy from arcpy import env env.workspace = "C:/data/GreenvalleyDB.mdb/Public Buildings" arcpy.FeatureClassToFeatureClass_conversion("buildings_point", "C:/output/output.gdb", "buildings_point")
以下独立脚本演示了如何使用 FeatureClassToFeatureClass 工具。
# Name: FeatureClassToFeatureClass_Example2.py # Description: Use FeatureClassToFeatureClass with an expression to create a subset # of the original feature class. # Import system modules import arcpy from arcpy import env # Set environment settings env.workspace = "C:/data/GreenvalleyDB.mdb/Public Buildings" # Set local variables inFeatures = "buildings_point" outLocation = "C:/output/output.gdb" outFeatureClass = "postoffices" delimitedField = arcpy.AddFieldDelimiters(env.workspace, "NAME") expression = delimitedField + " = 'Post Office'" # Execute FeatureClassToFeatureClass arcpy.FeatureClassToFeatureClass_conversion(inFeatures, outLocation, outFeatureClass, expression)