De JSON a entidades (Conversión)

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

EtiquetaExplicaciónTipo 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.

  • PuntoLos puntos se convertirán en entidades.
  • MultipuntoLos multipuntos se convertirán en entidades.
  • PolilíneaLas polilíneas se convertirán en entidades.
  • PolígonoLos polígonos se convertirán en entidades.
String

arcpy.conversion.JSONToFeatures(in_json_file, out_features, {geometry_type})
NombreExplicaciónTipo 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.

  • POINTLos puntos se convertirán en entidades.
  • MULTIPOINTLos multipuntos se convertirán en entidades.
  • POLYLINELas polilíneas se convertirán en entidades.
  • POLYGONLos polígonos se convertirán en entidades.
String

Muestra de código

Ejemplo de JSONToFeatures (ventana de Python)

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"))