Solo necesitaba uno de los campos, que contenía una cadena de fecha. Usando arcMap, pude resolver esto usando la calculadora de campo para extraerlo. Si solo necesita extraer un par de campos, esto puede funcionar para usted, aunque sea un poco tedioso:
Los siguientes pasos lo ayudarán a construir una línea de VB para usar en la calculadora de campo para cortar una subcadena del campo de descripción en función de las etiquetas HTML y la cantidad de datos almacenados en su tabla.
- En GoogleEarth, abra su KML / KMZ, haga clic en una función para abrir la ventana emergente. Identifique el nombre exacto del campo que desea recuperar. El mío se llama "FECHA"
- En ArcMap, abra la tabla de atributos de la capa que creó cuando importó el KML / KMZ.
- Identifica el campo de descripción. En mis datos se llama "PopupInfo"
- En el primer registro, haga clic derecho en la celda "PopupInfo" y haga clic en "copiar"
- Abra el Bloc de notas y pegue el contenido de la celda. Ahora verá el HTML para la ventana emergente.
- Use ctrl-F para encontrar el nombre del campo de KML / KMZ (en mi caso, "FECHA"). Aquí hay una captura de pantalla que muestra solo la línea del HTML que me interesa.
- Cuente el número de caracteres, incluidos los espacios desde el comienzo del nombre del campo hasta el comienzo de sus datos. En mi caso hay 15 caracteres.
- Determine cuántos caracteres desea extraer. Para mi subcadena, necesito 19. Por ejemplo, si solo necesita códigos de estado como AZ y WY, es posible que solo necesite 2. Si sus datos no tienen entradas de longitud consistentes en este campo, errar en el lado del más largo. Editar: puede eliminar los caracteres adicionales más tarde manualmente o utilizando las funciones VB instr () y rtrim (). Publica o envíame un mensaje si necesitas ayuda con eso.
En arcMap, agregue un nuevo campo TEXTO a su capa y asegúrese de darle al menos tantos caracteres como necesite para sus datos. El valor predeterminado es 50.
Luego, abra la calculadora de campo para su nuevo campo. El inicio de los datos se encuentra usando la función InStr (), y los datos se extraen usando la función Mid (). Escriba el siguiente comando VB:
Mid([PopupInfo],InStr([PopupInfo],"DATE")+15,19)
Por supuesto, cambie los nombres de mis campos por los suyos (de los pasos 3 y 6) y cambie la longitud de los números 15 y 19 a la longitud de sus subcadenas (que se encuentran en los pasos 7 y 8).
En la línea VB anterior:
- [PopupInfo] es el nombre del campo molesto que contiene el HTML para la ventana emergente KML.
- "FECHA" es el nombre del campo KML y la etiqueta HTML que contiene los datos que quiero extraer.
- 15 es el número de caracteres desde el inicio de la etiqueta de fecha hasta el inicio de los datos de la fecha real.
- 19 es el número de caracteres en la cadena de fecha que queremos conservar.