Bagikan melalui


Csv.Document

Sintaks

 
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

Tentang

Mengembalikan konten dokumen CSV sebagai tabel.

  • columns bisa null, jumlah kolom, daftar nama kolom, tipe tabel, atau rekaman opsi.
  • delimiter dapat berupa karakter tunggal, daftar karakter, atau nilai "", yang menunjukkan baris harus dibagi berdasarkan karakter spasi putih berturut-turut. Default: ",".
  • Lihat ExtraValues.Type untuk nilai yang didukung dari extraValues.
  • encoding menentukan jenis pengodean teks.

Jika rekaman ditentukan untuk columns (dan delimiter, extraValues, dan encoding null), bidang rekaman berikut dapat disediakan:

  • Delimiter: Pemisah kolom karakter tunggal. Default: ",".
  • Columns: Bisa null, jumlah kolom, daftar nama kolom, atau jenis tabel. Jika jumlah kolom lebih rendah dari angka yang ditemukan dalam input, kolom tambahan akan diabaikan. Jika jumlah kolom lebih tinggi dari angka yang ditemukan dalam input, kolom tambahan akan null. Ketika tidak ditentukan, jumlah kolom akan ditentukan oleh apa yang ditemukan dalam input.
  • Encoding: Pengodean teks file. Default: 65001 (UTF-8).
  • CsvStyle: Menentukan bagaimana kuotasi ditangani.
  • QuoteStyle: Menentukan bagaimana hentian baris yang dikutip ditangani.
    • QuoteStyle.Csv (default): Hentian baris yang dikutip diperlakukan sebagai bagian dari data, bukan sebagai akhir baris saat ini.
    • QuoteStyle.None: Semua hentian baris diperlakukan sebagai akhir baris saat ini, bahkan ketika terjadi di dalam nilai yang dikutip.

Contoh 1

Memproses teks CSV dengan header kolom.

Penggunaan

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

Hasil

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

Contoh 2

Memproses teks CSV dengan beberapa karakter pemisah. Dalam contoh ini, parameter ketiga menentukan pola #|# pemisah yang akan digunakan alih-alih default.

Penggunaan

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

Hasil

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