Etiqueta | Explicación | Tipo de datos |
JSON o GeoJSON de entrada | El archivo .json o .geojson de entrada se convertirá en una clase de entidad. La extensión del archivo de entrada determina el formato utilizado por la herramienta para una conversión adecuada. Para el archivo con formato JSON de Esri, utilice la extensión .json; para los archivos con formato GeoJSON, utilice la extensión .geojson. | File |
Clase de entidad de salida | La clase de entidad de salida que contendrá las entidades del archivo .json o .geojson de entrada. | Feature Class |
Tipo de geometría (Opcional) | Especifica el tipo de geometría que se usará para convertir de GeoJSON a entidades. Este parámetro solo se usa cuando la entrada es un archivo .geojson. Si el archivo .geojson no contiene ninguno de los tipos de geometría especificados, la clase de entidad de salida estará vacía.
| String |
Resumen
Convierte conjuntos de entidades de un archivo con formato JSON (.json) o GeoJSON (.geojson) de Esri en una clase de entidad.
Uso
Si el archivo .json de entrada tiene las propiedades hasZ o hasM definidas como True, las entidades de salida tendrán valores z y m.
Si la entrada es un archivo .geojson, debe seleccionar el tipo de geometría para convertirlo en una clase de entidad. GeoJSON admite varios tipos de entidades en el mismo archivo, y una clase de entidad debe componerse de entidades del mismo tipo de entidad.
Los campos de texto de la salida tienen una longitud larga (2 mil millones de caracteres), ya que las especificaciones del formato JSON y GeoJSON no incluyen una propiedad de longitud para los atributos de texto. Para mejorar el rendimiento de conversión, se utiliza una longitud fija grande en lugar de leer todos los valores para determinar el mayor número de caracteres.
Las especificaciones de formato JSON y GeoJSON no incluyen una forma estándar de almacenar valores de datetime. Un valor datetime se puede representar como un valor entero de segundos desde la época de hora UNIX. Para convertir este número en un valor datetime, utilice la herramienta Calcular campo o una expresión de Python como datetime.datetime.fromtimestamp(!date_field!).
Cuando la entrada es un archivo de .geojson, los atributos del primer registro se utilizan para definir el esquema de la clase de entidad de salida.
Parámetros
arcpy.conversion.JSONToFeatures(in_json_file, out_features, {geometry_type})
Nombre | Explicación | Tipo de datos |
in_json_file | El archivo .json o .geojson de entrada se convertirá en una clase de entidad. La extensión del archivo de entrada determina el formato utilizado por la herramienta para una conversión adecuada. Para el archivo con formato JSON de Esri, utilice la extensión .json; para los archivos con formato GeoJSON, utilice la extensión .geojson. | File |
out_features | La clase de entidad de salida que contendrá las entidades del archivo .json o .geojson de entrada. | Feature Class |
geometry_type (Opcional) | Especifica el tipo de geometría que se usará para convertir de GeoJSON a entidades. Este parámetro solo se usa cuando la entrada es un archivo .geojson. Si el archivo .geojson no contiene ninguno de los tipos de geometría especificados, la clase de entidad de salida estará vacía.
| String |
Muestra de código
En el siguiente script de Python se muestra cómo utilizar la función JSONToFeatures.
import arcpy
import os
arcpy.env.workspace = "c:/data"
arcpy.conversion.JSONToFeatures("myjsonfeatures.json", os.path.join("outgdb.gdb", "myfeatures"))