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
Restituisce il contenuto del documento CSV come tabella.
-
columns
può essere Null, il numero di colonne, un elenco di nomi di colonna, un tipo di tabella o un record di opzioni. -
delimiter
può essere un singolo carattere, un elenco di caratteri o il valore""
, che indica che le righe devono essere suddivise per spazi vuoti consecutivi. Impostazione predefinita:","
. - Vedere ExtraValues.Type per i valori supportati di
extraValues
. -
encoding
specifica il tipo di codifica del testo.
Se si specifica un record per columns
(e delimiter
, extraValues
e encoding
sono Null), è possibile fornire i campi di record seguenti:
-
Delimiter
: un delimitatore di colonna a carattere singolo. Impostazione predefinita:","
. -
Columns
: può essere Null, il numero di colonne, un elenco di nomi di colonna o un tipo di tabella. Se il numero di colonne è minore di quello trovato nell'input, le colonne aggiuntive verranno ignorate. Se il numero di colonne è maggiore di quello trovato nell'input, le colonne aggiuntive saranno Null. Se non viene specificato, il numero di colonne verrà determinato da quanto trovato nell'input. -
Encoding
: codifica del testo del file. Impostazione predefinita: 65001 (UTF-8). -
CsvStyle
: specifica in che modo vengono gestite le virgolette.- CsvStyle.QuoteAfterDelimiter (impostazione predefinita): le virgolette in un campo sono significative solo immediatamente dopo il delimitatore.
- CsvStyle.QuoteAlways: le virgolette in un campo sono sempre significative, indipendentemente dalla posizione.
-
QuoteStyle
: specifica in che modo vengono gestite le interruzioni di riga.- QuoteStyle.Csv (impostazione predefinita): le interruzioni di riga tra virgolette vengono considerate parte dei dati e non come la fine della riga corrente.
- QuoteStyle.None: tutte le interruzioni di riga vengono considerate come la fine della riga corrente, anche se ricorrono all'interno di un valore tra virgolette.
Elaborare testo CSV con intestazioni di colonna.
Utilizzo
let
csv = Text.Combine({"OrderID,Item", "1,Fishing rod", "2,1 lb. worms"}, "#(cr)#(lf)")
in
Table.PromoteHeaders(Csv.Document(csv))
Output
Table.FromRecords({
[OrderID = "1", Item = "Fishing rod"],
[OrderID = "2", Item = "1 lb. worms"]
})
Elaborare testo CSV con caratteri delimitatori multipli. In questo esempio, il terzo parametro specifica il modello di delimitatore #|#
da usare anziché il valore predefinito.
Utilizzo
let
csv = Text.Combine({"OrderID#|#Color", "1#|#Red", "2#|#Blue"}, "#(cr)#(lf)")
in
Table.PromoteHeaders(Csv.Document(csv, null, "#|#"))
Output
Table.FromRecords({
[OrderID = "1", Color = "Red"],
[OrderID = "2", Color = "Blue"]
})