Resumen
Convierte de entidades a formato JSON. Los campos, la geometría y la referencia espacial de las entidades se convertirán a su correspondiente representación JSON y se escribirán en un archivo con una extensión .json.
Uso
Si desea que la representación JSON en el archivo de salida sea más fácil de leer, puede habilitar la aplicación de formato. La notación JSON se formateará con espacios, tabulaciones y retornos de carro para mejorar su legibilidad. Una notación JSON formateada puede ser beneficiosa para el desarrollo y pruebas de aplicaciones. Sin embargo, no se recomienda para aplicaciones reales de producción ya que todos los espacios en blanco son innecesarios y omitidos por los analizadores de JSON. Además, la notación JSON formateada puede ser mucho mayor que su equivalente JSON, y el tamaño del archivo será superior al de su correspondiente representación JSON. Esto puede afectar al rendimiento de las aplicaciones.
- La conversión no admite uniones, relaciones ni asociaciones de las entidades.
Para convertir un subconjunto de entidades en una clase de entidad o una capa de entidades, use las herramientas Seleccionar capa por atributo o Seleccionar capa por ubicación y seleccione el subconjunto de entidades que se van a convertir antes de utilizar De entidades a JSON.
Active el parámetro Salida a GeoJSON (geoJSON='GEOJSON' en Python) para crear una salida JSON conforme a la especificación de GeoJSON. La salida JSON de Esri es el valor predeterminado.
Sintaxis
arcpy.conversion.FeaturesToJSON(in_features, out_json_file, {format_json}, {include_z_values}, {include_m_values}, {geoJSON})
Parámetro | Explicación | Tipo de datos |
in_features | Las entidades que se van a convertir a JSON. | Feature Layer |
out_json_file | El archivo JSON de salida. | File |
format_json (Opcional) | La notación JSON se puede formatear para mejorar la legibilidad de forma similar al formato PJSON (Pretty JSON) de la especificación API REST de ArcGIS.
| Boolean |
include_z_values (Opcional) | Incluya los valores Z de las entidades en la notación JSON.
| Boolean |
include_m_values (Opcional) | Incluya los valores M de las entidades en la notación JSON.
| Boolean |
geoJSON (Opcional) | Cree una salida como GeoJSON, de acuerdo con la especificación de GeoJSON.
| Boolean |
Muestra de código
Ejemplo 1 de FeaturesToJSON (ventana de Python)
La siguiente secuencia de comandos de la ventana de Python muestra cómo se usa la función FeaturesToJSON para crear archivos JSON y PJSON.
import arcpy
import os
arcpy.env.workspace = "c:/data"
arcpy.FeaturesToJSON_conversion(os.path.join("outgdb.gdb", "myfeatures"), "myjsonfeatures.json")
arcpy.FeaturesToJSON_conversion(os.path.join("outgdb.gdb", "myfeatures"), "mypjsonfeatures.json", "FORMATTED")
Ejemplo 2 de FeaturesToJSON (ventana de Python)
La siguiente secuencia de comandos de la ventana de Python muestra cómo se usa la función FeaturesToJSON con valores Z y M.
import arcpy
import os
arcpy.env.workspace = "c:/data"
arcpy.FeaturesToJSON_conversion(os.path.join("outgdb.gdb", "myfeatures"), "myjsonfeatures.json", "NOT_FORMATTED",
"Z_VALUES", "M_VALUES")
Ejemplo 3 de FeaturesToJSON (secuencia de comandos independiente)
Convierta un subconjunto de entidades a JSON usando SelectLayerByAttribute y SelectLayerByLocation.
# Import system modules
import arcpy
# Set the workspace
arcpy.env.workspace = "c:/data/mexico.gdb"
# Make a layer from the feature class
arcpy.MakeFeatureLayer_management("cities", "lyr")
# Select all cities which overlap the chihuahua polygon
arcpy.SelectLayerByLocation_management("lyr", "intersect", "chihuahua", 0, "new_selection")
# Within selected features, further select only those cities which have a population > 10,000
arcpy.SelectLayerByAttribute_management("lyr", "SUBSET_SELECTION", '"population" > 10000')
# Convert the selected features to JSON
arcpy.FeaturesToJSON_conversion("lyr", r"c:\data\myjsonfeatures.json")
Entornos
Información de licenciamiento
- Basic: Sí
- Standard: Sí
- Advanced: Sí