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 catatan opsi.
  • delimiter dapat berupa karakter tunggal, daftar karakter, atau nilai "", yang menunjukkan baris harus dibagi berdasarkan karakter spasi putih berturut-turut. Bawaan: ",".
  • Lihat ExtraValues.Type untuk nilai extraValuesyang didukung.
  • 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. Bawaan: ",".
  • 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 tanda kutip 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.
  • IncludeByteOrderMark: Nilai logis yang menunjukkan apakah akan menyertakan Tanda Urutan Byte (BOM) di awal output CSV. Ketika diatur ke true, BOM ditulis (misalnya, UTF-8 BOM: 0xEF 0xBB 0xBF); ketika diatur ke false, tidak ada BOM yang disertakan. Opsi ini hanya berlaku dalam skenario output. Defaultnya adalah false.
  • ExtraValues: Lihat ExtraValues.Type untuk nilai yang didukung dari ExtraValues.

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"]
})