Csv.Document
Csv.Document(source as any, optional columns as any, optional delimiter as any, optional extraValues as nullable number, optional encoding as nullable number) as table
Devuelve el contenido del documento CSV como una tabla.
columns
puede ser null, el número de columnas, una lista de nombres de columna, un tipo de tabla o un registro de opcionesdelimiter
puede ser un solo carácter, una lista de caracteres o el valor""
, que indica que las filas deben dividirse con caracteres de espacio en blanco consecutivos. Predeterminado:","
.- ConsulteExtraValues.Type para saber cuáles son los valores admitidos de
extraValues
. encoding
especifica el tipo de codificación de texto.
Si se especifica un registro para columns
(y delimiter
, extraValues
y encoding
son null), se pueden proporcionar los siguientes campos de registro:
Delimiter
: un delimitador de columna de caracteres único. Predeterminado:","
.Columns
: puede ser null, el número de columnas, una lista de nombres de columna o un tipo de tabla. Si el número de columnas es menor que el número de la entrada, las columnas extra se omitirán. Si el número de columnas es mayor que el número de la entrada, las columnas extra serán null. Si no se especifica, el número de columnas se determinará en función de lo que refleje la entrada.Encoding
: codificación de texto del archivo. Valor predeterminado: 65001 (UTF-8).CsvStyle
: especifica cómo se tratan las comillas.- CsvStyle.QuoteAfterDelimiter (valor predeterminado): las comillas de un campo solo son significativas inmediatamente después del delimitador.
- CsvStyle.QuoteAlways: las comillas de un campo son significativas siempre, independientemente del lugar en que aparecen.
QuoteStyle
: especifica cómo se tratan los saltos de línea entre comillas.- QuoteStyle.Csv: los saltos de línea entre comillas se tratan como parte de los datos, no como el final de la fila actual.
- QuoteStyle.None: todos los saltos de línea se tratan como el final de la fila actual, incluso cuando aparecen dentro de un valor entre comillas.
Procesar texto CSV con encabezados de columna.
Uso
let
csv = Text.Combine({"OrderID,Item", "1,Fishing rod", "2,1 lb. worms"}, "#(cr)#(lf)")
in
Table.PromoteHeaders(Csv.Document(csv))
Salida
Table.FromRecords({
[OrderID = "1", Item = "Fishing rod"],
[OrderID = "2", Item = "1 lb. worms"]
})
Procesar texto CSV con varios caracteres delimitadores. En este ejemplo, el tercer parámetro especifica el patrón #|#
delimitador que se va a usar en lugar del valor predeterminado.
Uso
let
csv = Text.Combine({"OrderID#|#Color", "1#|#Red", "2#|#Blue"}, "#(cr)#(lf)")
in
Table.PromoteHeaders(Csv.Document(csv, null, "#|#"))
Salida
Table.FromRecords({
[OrderID = "1", Color = "Red"],
[OrderID = "2", Color = "Blue"]
})