Rumah > pembangunan bahagian belakang > Golang > Baca kandungan fail yang tidak dikodkan UTF8 dan cetaknya dengan betul

Baca kandungan fail yang tidak dikodkan UTF8 dan cetaknya dengan betul

王林
Lepaskan: 2024-02-06 08:27:09
ke hadapan
460 orang telah melayarinya

Baca kandungan fail yang tidak dikodkan UTF8 dan cetaknya dengan betul

Kandungan soalan

Saya cuba membaca fail berkod bukan utf8 dan mencetak kandungannya. Seperti:

content, _ := os.readfile("example.csv")
fmt.println(string(content))
Salin selepas log masuk

Keluaran:

����������������������������

Kemudian saya cuba menukar kandungan rune dan menyahkodnya kepada utf8 seperti ini:

br := make([]rune, 0)
for len(content) > 0 {
    r, size := utf8.DecodeRune(content)
    br = append(br, r)
    content = content[size:]
}
fmt.Println(string(br))
Salin selepas log masuk

Tetapi hasilnya tetap sama. Bagaimanakah saya boleh mendapatkan kandungan yang betul? ps: Saya tidak tahu jenis pengekodan fail, ia boleh terdiri daripada beberapa jenis seperti traditionalchinese.big5 atau japanese.shiftjis, dan kandungannya tidak boleh menjadi fail. Ia boleh menjadi rentetan.


Jawapan betul


Kemungkinan besar anda perlu datang dari hierarki golang.org/x/ 的软件包text/encoding.

Khususnya golang.org/x/text/encoding /charmapgolang.org/x/text/encoding /charmap 允许创建 encoding。Decoder membenarkan penciptaan pengekodan. Penyahkod boleh menukar strim bait dalam pengekodan tradisional bukan UTF-8 ke dalam strim data yang dikodkan UTF-8 asli Go.

Atas ialah kandungan terperinci Baca kandungan fail yang tidak dikodkan UTF8 dan cetaknya dengan betul. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:stackoverflow.com
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan