Delen via


Csv.Document

Syntaxis

 
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

Over

Retourneert de inhoud van het CSV-document als een tabel.

  • columns kan null zijn, het aantal kolommen, een lijst met kolomnamen, een tabeltype of een optiesrecord.
  • delimiter kan één teken, een lijst met tekens of de waarde ""zijn, die aangeeft dat rijen moeten worden gesplitst door opeenvolgende spaties. Standaard: ",".
  • Raadpleeg ExtraValues.Type voor de ondersteunde waarden van extraValues.
  • encoding hiermee geeft u het type tekstcodering op.

Als een record is opgegeven voor columns (en delimiter, extraValuesen encoding null zijn), kunnen de volgende recordvelden worden opgegeven:

  • Delimiter: Een scheidingsteken voor één tekenkolom. Standaard: ",".
  • Columns: kan null zijn, het aantal kolommen, een lijst met kolomnamen of een tabeltype. Als het aantal kolommen lager is dan het aantal dat in de invoer wordt gevonden, worden de extra kolommen genegeerd. Als het aantal kolommen hoger is dan het aantal dat in de invoer is gevonden, zijn de extra kolommen null. Wanneer dit niet is opgegeven, wordt het aantal kolommen bepaald door wat er in de invoer wordt gevonden.
  • Encoding: De tekstcodering van het bestand. Standaard: 65001 (UTF-8).
  • CsvStyle: Hiermee geeft u op hoe aanhalingstekens worden verwerkt.
  • QuoteStyle: Hiermee geeft u op hoe regeleinden tussen aan citeren worden verwerkt.
    • QuoteStyle.Csv (standaard): Regeleinden tussen aanhalingstekens worden behandeld als onderdeel van de gegevens, niet als het einde van de huidige rij.
    • QuoteStyle.None: Alle regeleinden worden behandeld als het einde van de huidige rij, zelfs wanneer ze voorkomen in een aanhalingstekens.

Voorbeeld 1

CSV-tekst verwerken met kolomkoppen.

Gebruik

let
    csv = Text.Combine({"OrderID,Item", "1,Fishing rod", "2,1 lb. worms"}, "#(cr)#(lf)")
in
    Table.PromoteHeaders(Csv.Document(csv))

Uitvoer

Table.FromRecords({
    [OrderID = "1", Item = "Fishing rod"],
    [OrderID = "2", Item = "1 lb. worms"]
})

Voorbeeld 2

CSV-tekst met meerdere scheidingstekens verwerken. In dit voorbeeld geeft de derde parameter het scheidingstekenpatroon #|# op dat moet worden gebruikt in plaats van de standaardwaarde.

Gebruik

let
    csv = Text.Combine({"OrderID#|#Color", "1#|#Red", "2#|#Blue"}, "#(cr)#(lf)")
in
    Table.PromoteHeaders(Csv.Document(csv, null, "#|#"))

Uitvoer

Table.FromRecords({
    [OrderID = "1", Color = "Red"],
    [OrderID = "2", Color = "Blue"]
})