Español

Datos y hojas de cálculo · CSV Limpiador

CSV Dialectos de escape: comillas dobles, barras invertidas y exportaciones de bases de datos

· Antecedentes

csv análisis interoperabilidad

Una ruta CSV entre comillas dobles tiene éxito mientras que un escape de barra invertida sigue siendo texto literal
Ilustración de vector original de ToolAcre

RFC 4180 dice duplicar las comillas; En su lugar, varias herramientas de bases de datos exportan con barras invertidas. Esta publicación explica las convenciones de escape en circulación, de dónde viene cada una y por qué un archivo que es válido en un dialecto se rompe en otro.

Una exportación de base de datos que una hoja de cálculo lee con barras invertidas perdidas: dos tradiciones de escape que chocan en un archivo

Una exportación puede contener una barra invertida seguida de una comilla porque su productor sigue una convención de estilo de lenguaje de programación, mientras que un analizador orientado a hoja de cálculo espera comillas dobles. Introducir un dialecto en otro no crea un compromiso neutral. Cambia dónde se abre y cierra el estado entre comillas o deja caracteres de escape en los datos.

ToolAcre admite una regla clara: los campos se pueden incluir entre comillas dobles y una comilla interna se representa mediante dos comillas. La barra invertida no tiene función de escape. Identificar ese contrato antes de cargarlo es más seguro que pedirle al limpiador que adivine qué puntuación pretendía el productor.

La convención RFC: incluir comillas dobles y duplicar cualquier comilla interna, sin ningún carácter de escape.

Para un valor como `She said "hello", then left`, el estilo RFC CSV rodea el campo y escribe las marcas internas dos veces. El delimitador permanece dentro del estado entre comillas y cada par duplicado devuelve una comilla literal. La serialización aplica la misma transformación a la inversa.

Los campos se citan cuando contienen el delimitador actual, cotización, LF, CR o espacios circundantes, o cuando se selecciona Citar todos los campos. No hay ningún carácter de escape separado. Esta pequeña gramática se prueba para delimitadores, terminaciones de registros incrustadas y pares de comillas.

La tradición C: comillas con barra invertida, nuevas líneas y delimitadores heredados de lenguajes de programación y algunos cargadores de bases de datos

Algunos sistemas fuente pueden definir convenciones de barra invertida, pero ToolAcre no tiene ningún modificador para ellas. Se añade una barra invertida al campo actual como cualquier carácter normal. Luego, la siguiente cita se interpreta según si el analizador está en estado entrecomillado y si tiene una cita emparejada.

En consecuencia, una exportación de barra invertida debe analizarse mediante una herramienta configurada para ese dialecto antes de convertirla a comillas dobles CSV. Buscar y reemplazar es arriesgado porque las barras invertidas literales y las secuencias de escape pueden parecerse. La gramática fuente debe decidir cuáles son sintaxis.

El escape de barra invertida es un dialecto alternativo no admitido, no un modo que ToolAcre pueda leer

El libro nombra productos de bases de datos y bibliotecas de marcos de datos, pero sus valores predeterminados y modos configurables no están documentados en este repositorio. Este artículo no atribuye un dialecto a ningún proveedor en particular. Consulte la documentación exacta del exportador o cargador utilizada por el flujo de trabajo.

Capture el comando y las opciones que produjeron el archivo. Un producto puede admitir varios modos, por lo que su nombre por sí solo no es un dialecto. La reproducibilidad proviene de la configuración más una muestra que contiene casos extremos de delimitador, comillas, nueva línea y barra invertida.

Los valores predeterminados de bases de datos y bibliotecas específicas requieren su propia documentación y no se reclaman aquí

Según este analizador, `"a \"quote\"",b` no significa lo que un lector de estilo C podría esperar, porque las barras diagonales permanecen en el texto y las comillas gobiernan el estado CSV. Por el contrario, un par duplicado dentro de un campo entrecomillado se convierte en una comilla en lugar de dos caracteres literales.

Una discrepancia puede provocar columnas desplazadas o una advertencia de comillas no cerradas, o puede analizarse en cadenas con apariencia incorrecta sin errores estructurales. Obtenga una vista previa de las filas representativas y compárelas con el productor. El éxito sintáctico por sí solo no puede certificar que la semántica de escape coincida.

Según las reglas de ToolAcre, las barras invertidas siguen siendo literales y las comillas dobles son el único escape de comillas

Escriba una celda que contenga una coma y una comilla como RFC CSV: `"She said ""hi"", then left"`. ToolAcre devuelve el valor exacto `She said "hi", then left`. En su lugar, escriba la comilla interna con barras invertidas y observe que la barra no tiene protección especial.

La comparación demuestra las reglas del analizador sin depender de una marca de base de datos. Después de un análisis correcto, la descarga produce comillas dobles de manera consistente. Después de un análisis que no coincide, la exportación simplemente estandariza las celdas incorrectas, así que resuelva el dialecto de origen antes de confiar en el resultado.

Lo que esto no cubre: exportaciones binarias, archivos de ancho fijo y caracteres de escape totalmente personalizados

Las exportaciones binarias, los registros de ancho fijo y los caracteres de escape personalizados están fuera de la ruta. Se informa una cotización no cerrada y consume la entrada restante como un campo; el limpiador no infiere a dónde pertenecía un cierre perdido. Esa ambigüedad no puede repararse de manera genérica.

La interfaz tampoco convierte automáticamente un dialecto de barra invertida. Utilice un analizador que nombre explícitamente el carácter de escape, obtenga una tabla de cadenas verificadas y luego serialice según la convención de destino. Cada gramática debe aplicarse una vez en un límite conocido.

Conozca el dialecto en ambos extremos: cómo la reparación de citas del limpiador ToolAcre CSV normaliza los campos para obtener citas consistentes que leen los analizadores estándar

Conozca ambos puntos finales. ToolAcre es apropiado cuando la fuente sigue a CSV entre comillas dobles o cuando otro analizador ya ha normalizado un dialecto diferente en celdas verificadas. Su resultado ofrece cotizaciones mínimas o de todos los campos consistentes y duplica cada cotización incorporada.

No confunda una descarga limpia con la detección de dialecto. El detector automático elige delimitadores, no gramáticas de escape. Un separador de registros de transferencia confiable, una regla de cotización, una política de nueva línea y codificación juntos, luego prueba una muestra adversa antes de que se muevan los datos de producción.