Κοινή χρήση μέσω


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

Πληροφορίες

Επιστρέφει τα περιεχόμενα του εγγράφου CSV ως πίνακα.

  • columns Το μπορεί να είναι null, ο αριθμός των στηλών, μια λίστα ονομάτων στηλών, ένας τύπος πίνακα ή μια εγγραφή επιλογών.
  • delimiter Το μπορεί να είναι ένας μόνο χαρακτήρας, μια λίστα χαρακτήρων ή η τιμή "", η οποία υποδεικνύει ότι οι γραμμές πρέπει να διαιρεθούν με διαδοχικούς χαρακτήρες κενού χώρου. Προεπιλογή: ",".
  • Ανατρέξτε στο ExtraValues.Type για τις υποστηριζόμενες τιμές του extraValues.
  • encoding Το καθορίζει τον τύπο κωδικοποίησης κειμένου.

Εάν έχει καθοριστεί μια εγγραφή για columns (και delimiterτα , extraValuesκαι encoding είναι null), ενδέχεται να δοθούν τα παρακάτω πεδία εγγραφής:

  • Delimiter: Ένας οριοθέτης στήλης ενός χαρακτήρα. Προεπιλογή: ",".
  • Columns: Μπορεί να είναι null, ο αριθμός των στηλών, μια λίστα ονομάτων στηλών ή ένας τύπος πίνακα. Εάν ο αριθμός των στηλών είναι μικρότερος από τον αριθμό που βρέθηκε στα δεδομένα εισόδου, οι πρόσθετες στήλες θα αγνοηθούν. Εάν ο αριθμός των στηλών είναι μεγαλύτερος από τον αριθμό που βρέθηκε στα δεδομένα εισόδου, οι πρόσθετες στήλες θα είναι null. Όταν δεν καθορίζεται, ο αριθμός των στηλών θα προσδιορίζεται από τα στοιχεία εισόδου.
  • Encoding: Η κωδικοποίηση κειμένου του αρχείου. Προεπιλογή: 65001 (UTF-8).
  • CsvStyle: Καθορίζει τον τρόπο χειρισμού των εισαγωγικών.
    • CsvStyle.QuoteAfterDelimiter (προεπιλογή): Τα εισαγωγικά σε ένα πεδίο είναι σημαντικά μόνο όταν ακολουθούν τον οριοθέτη.
    • CsvStyle.QuoteAlways: Τα εισαγωγικά σε ένα πεδίο είναι πάντα σημαντικά, ανεξάρτητα από το σημείο που εμφανίζονται.
  • QuoteStyle: Καθορίζει τον τρόπο χειρισμού των αλλαγών γραμμής που βρίσκονται μέσα σε εισαγωγικά.
    • QuoteStyle.Csv (προεπιλογή): Οι αλλαγές γραμμών σε εισαγωγικά αντιμετωπίζονται ως μέρος των δεδομένων, όχι ως το τέλος της τρέχουσας γραμμής.
    • QuoteStyle.None: Όλες οι αλλαγές γραμμών αντιμετωπίζονται ως το τέλος της τρέχουσας γραμμής, ακόμα και όταν εμφανίζονται μέσα σε μια τιμή σε εισαγωγικά.

Παράδειγμα 1

Επεξεργαστείτε κείμενο CSV με κεφαλίδες στηλών.

Χρήση

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

Έξοδος

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

Παράδειγμα 2

Επεξεργαστείτε κείμενο CSV με πολλούς χαρακτήρες οριοθέτη. Σε αυτό το παράδειγμα, η τρίτη παράμετρος καθορίζει το μοτίβο #|# οριοθέτη που θα χρησιμοποιηθεί αντί για την προεπιλογή.

Χρήση

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

Έξοδος

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