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
Retorna o conteúdo do documento CSV como uma tabela.
columns
pode ser nulo, o número de colunas, uma lista de nomes de colunas, um tipo de tabela ou um registro de opções.- O
delimiter
pode ser um caractere, uma lista de caracteres ou o valor""
, que indica que as linhas devem ser divididas por caracteres de espaço em branco consecutivos. Padrão:","
. - Consulte ExtraValues.Type para obter os valores suportados de
extraValues
. encoding
Especifica o tipo de codificação de texto.
Se um registro for especificado para columns
(e delimiter
, extraValues
e encoding
forem nulos), os seguintes campos de registro poderão ser fornecidos:
Delimiter
: um delimitador de coluna de caractere único. Padrão:","
.Columns
: pode ser nulo, o número de colunas, uma lista de nomes de colunas ou um tipo de tabela. Se o número de colunas for menor do que o número encontrado na entrada, as colunas adicionais serão ignoradas. Se o número de colunas for maior do que o número encontrado na entrada, as colunas adicionais serão nulas. Quando não for especificado, o número de colunas será determinado pelo que é encontrado na entrada.Encoding
: a codificação de texto do arquivo. Padrão: 65001 (UTF-8).CsvStyle
: especifica como as aspas são manipuladas.- CsvStyle.QuoteAfterDelimiter (padrão): as aspas em um campo são significativas apenas imediatamente depois do delimitador.
- CsvStyle.QuoteAlways: as aspas em um campo são sempre significativas, independentemente do local em que aparecerem.
QuoteStyle
: especifica como as quebras de linha entre aspas são manipuladas.- QuoteStyle.Csv (padrão): as quebras de linha entre aspas são tratadas como parte dos dados e não como o fim da linha atual.
- QuoteStyle.None: todas as quebras de linha são tratadas como o final da linha atual, mesmo quando elas ocorrem dentro de um valor entre aspas.
Processa texto CSV com cabeçalhos de coluna.
Usage
let
csv = Text.Combine({"OrderID,Item", "1,Fishing rod", "2,1 lb. worms"}, "#(cr)#(lf)")
in
Table.PromoteHeaders(Csv.Document(csv))
Saída
Table.FromRecords({
[OrderID = "1", Item = "Fishing rod"],
[OrderID = "2", Item = "1 lb. worms"]
})
Processe um texto CSV com vários caracteres delimitadores. Neste exemplo, o terceiro parâmetro especifica o padrão #|#
de delimitador a ser usado em vez do padrão.
Usage
let
csv = Text.Combine({"OrderID#|#Color", "1#|#Red", "2#|#Blue"}, "#(cr)#(lf)")
in
Table.PromoteHeaders(Csv.Document(csv, null, "#|#"))
Saída
Table.FromRecords({
[OrderID = "1", Color = "Red"],
[OrderID = "2", Color = "Blue"]
})