| Presentación y opciones | Caja de diálogo de la aplicación |
| Ejemplos | Sintaxis |
Esta aplicación convierte ficheros del formato DBF al formato CSV y viceversa. Los ficheros TXT también son compatibles como formato de datos tabulares, tanto para la lectura como para la escritura. Las opciones posibles son:
En la conversión de DBF a CSV/TXT, los datos de la tabla original se transforman en un fichero de texto. En este fichero, los textos aparecen en una misma línea y las diferentes columnas o campos se distinguen mediante un carácter separador, que se puede escoger. En muchos países de Europa el separador preferido es el punto y coma (;), y la coma (,) en Estados Unidos y muchos otros países. Este modificador también acepta la palabra especial TAB para indicar que el carácter tabulador (con valor binario 9 en el fichero CSV) será el carácter separador de listas. El carácter tabulador es una elección excelente (recomendada) porque la lectura de ficheros CSV en otros programas (como el propio MS-Excel) es mucho menos problemática cuando los campos contienen comas, puntos y comas, comillas, apóstrofos, etc. También se aceptan las palabras especiales SPA, para indicar que el espacio será el carácter separador de listas, y CAP, para indicar que no hay ningún separador de listas.
La primera fila del CSV generado contendrá los nombres de los campos, que se convertirán en las columnas del fichero CSV, y en las filas sucesivas se escribirán los valores de cada registro, separados entre sí por el delimitador seleccionado.
En la conversión inversa, de CSV/TXT a DBF, hay que seleccionar el separador que se ha utilizado en el CSV para generar las diferentes columnas (en caso de duda, se puede abrir el fichero para consultar qué separador se utiliza a través del icono
o bien abrirlo con cualquier editor de texto; hay que tener en cuenta que, si hay comillas, normalmente delimitan un texto que se incorporará a un mismo campo, o sirven, si aparecen duplicadas (""), para indicar unas comillas simples que deben constar como carácter de texto, habitualmente para marcar el signo de los segundos de arco, o de los segundos como 1/60 de un minuto).
La primera fila del CSV puede contener los nombres de las columnas (cuando se selecciona Primera línea con cabecera); en este caso, se pueden adoptar estos nombres como nombres de los campos de la DBF que se genere. En esta primera fila, el separador de los nombres de los campos es el mismo que en el resto de filas que darán lugar a los registros. En el caso de que el fichero CSV contenga líneas en blanco al final, particularmente debidas a un retorno final, estas filas no se incorporan a la DBF como registros vacíos. En caso de que se deseen estos registros sin información, se deben escribir tantos separadores como campos haya en la línea.
Se debe tener presente que, en el caso de los ficheros CSV, el programa analiza previamente el fichero para determinar el juego de caracteres y determinar si el fichero es ANSI, OEM o UTF-8. La tabla DBF de salida se escribe en el código de caracteres indicado en la clave JocCaracDBFPerDefecte= del MiraMon.par, que se puede modificar desde un editor de texto plano o desde el menú "Ayuda | Configurar parámetros", en la pestaña "Zoom y Aspectos generales".
En MiraMon, las tablas principales asociadas a ficheros que son capas con contenidos geográficos o geométricos (capas de gráficos, etc.) están en formato DBF o DBF extendida, y siempre tienen una primera columna utilizada para guardar lo que se denomina identificador gráfico (ID_GRAFIC). Este se utiliza para proporcionar a cada objeto gráfico una serie de atributos geométrico-topológicos o temáticos. En caso de que el CSV no tenga una primera columna de identificadores gráficos, esta se puede generar activando la casilla "Añadir columna de identificador gráfico".
Además, en MiraMon las tablas DBF pueden superar las limitaciones del formato dBASE IV (que se denomina DBF clásica; véase el documento dedicado a la DBF extendida), pero en otros casos, como por ejemplo en las tablas correspondientes a capas en formato Shape, no es así. Por tanto, la aplicación ofrece la posibilidad de restringir la conversión de CSV a DBF a los límites del formato de una DBF clásica (no extendida); hay que tener presente que, en este caso, como es lógico, puede que se pierdan campos o partes del contenido de los campos, o que los nombres de los campos tengan que simplificarse, etc., porque no es posible incluir esta información en una DBF clásica.
Por otra parte, también es posible determinar cuál es el carácter que actúa como calificador de texto. En un fichero CSV, el calificador de texto se utiliza para delimitar el inicio y el final de un texto que debe considerarse perteneciente a una columna (que se convertirá en un campo en la DBF). Es decir, permite indicar que todo lo que se encuentra entre dos calificadores (por ejemplo, comillas o apóstrofos) forma parte del mismo campo, aunque contenga el carácter utilizado para separar las columnas. Esto permite, por ejemplo, que, si se ha indicado que el separador es una coma, un campo de texto pueda contener una coma cuando todo el contenido del campo está delimitado por comillas, sin que dicha coma se interprete como un separador de columnas. Para ello, el contenido del campo se escribe entre dos caracteres que se denominan calificadores de texto.
MiraMon permite seleccionar entre 5 posibles calificadores:
Por ejemplo, en un registro que contiene tres campos: un campo numérico (1), un campo de texto (Pinus, Abies, etc) y otro campo numérico (28), y se seleccionan las comillas como calificador:
1,"Pinus, Abies, etc",28
las comas que hay dentro del texto "Pinus, Abies, etc" no se consideran separadores, ya que se ha indicado que el texto está delimitado por el calificador, que en este caso son las comillas.
Por último, MiraMon también permite determinar cómo se debe interpretar la presencia de un doble calificador. Cuando en un fichero CSV se encuentra un doble calificador (es decir, dos calificadores seguidos: ""), puede que se quiera hacer referencia a un campo sin contenido, pero también puede que se quiera hacer referencia al propio carácter ", como cuando el campo contiene unas coordenadas en grados-minutos-segundos y el valor de los segundos va seguido del símbolo ". En estos casos, puede que al escribir el fichero CSV se haya optado por escribir un doble calificador "" para evitar que el símbolo de los segundos se interprete como el inicio de un nuevo texto mediante un calificador. Esta opción permite indicar con qué criterio se debe interpretar la presencia de un doble calificador:
La aplicación también permite la lectura y escritura de ficheros de metadatos en formato CSVW (JSON) para documentar propiedades de las columnas, como el nombre del campo, el tipo de datos, la anchura máxima, las unidades (si se han indicado), etc. En la conversión de un fichero CSV/TXT a DBF, al seleccionar el fichero CSV/TXT, la aplicación intenta localizar automáticamente el fichero CSVW correspondiente y, si lo encuentra, lo asigna al recurso correspondiente y actualiza las opciones que se pueden seleccionar en el cuadro (separador de listas, presencia de cabecera, etc.). Si no encuentra ningún fichero CSVW o la persona usuaria no lo indica, la aplicación intenta estimar automáticamente el separador de listas y la presencia de cabecera del fichero CSV/TXT.
![]() ![]() |
| Cajas de diálogo de DBFCSV |
En el siguiente ejemplo se muestra la conversión de un fichero DBF que contiene información sobre los árboles monumentales de un país.
![]() |
| Tabla DBF origen |
Si se utiliza el punto y coma (;) como separador, la cabecera y la primera fila con datos de la tabla DBF original que recoge los árboles monumentales se escriben de la siguiente manera:
ID_GRAFIC;MENA_DECLA;NOM_DECLAR;ESPECIE;INE;TERME_MUNI;COMARCA;MATRICULA;ESTAT_DETA;ESTAT_RESU;URL;COORX;COORY;OBJECTID 0;AM;Pi Vell de l'Arp II;Pinus uncinata;25909;Vansa i Fórnols, La;Alt Urgell, l';AM 04.909.01b;N;Viu;http://mediambient.gencat.cat/ca/05_ambits_dactuacio/patrimoni_natural/arbres-monumentals/am_arbres_monumentals_fitxes/alt-urgell-6/pins-vells-de-larp-l-ll-lll/;377432.00;4673067.00;26
![]() |
| Fichero CSV resultante |
![]() |
| Fichero de metadatos en formato CSVW (JSON) |