Mengapakah saya mendapat ralat \'Tidak boleh menetapkan []bait kepada z (rentetan jenis) dalam berbilang tugasan\' semasa membaca fail dalam Go?

Linda Hamilton
Lepaskan: 2024-10-28 05:50:30
asal
885 orang telah melayarinya

Why am I getting the

Menyelesaikan "Tidak boleh menugaskan []bait kepada z (rentetan jenis) dalam berbilang tugasan" Ralat

Apabila cuba mengulangi fail dalam folder dan membaca kandungannya, anda mungkin menghadapi ralat: "tidak boleh memberikan []bait kepada z (jenis rentetan) dalam berbilang tugasan." Mari kita periksa kod dan sebab di sebalik ralat ini.

Dalam coretan kod yang disediakan, fungsi ReadFile() digunakan untuk membaca kandungan fail dan mengembalikan dua nilai: sekeping bait ([]bait ) yang mengandungi kandungan fail dan ralat, jika ada. Kod ini cuba memberikan kedua-dua nilai kepada pembolehubah yang sama z, iaitu daripada jenis rentetan. Walau bagaimanapun, tugasan ini tidak sah kerana anda tidak boleh memberikan nilai []bait kepada pembolehubah rentetan dalam berbilang tugasan.

Untuk menyelesaikan isu ini, anda perlu memisahkan tugasan dua nilai yang dikembalikan oleh ReadFile() :

<code class="go">buf, err := ioutil.ReadFile(z)
if err != nil {
        log.Fatal(err)
}</code>
Salin selepas log masuk

Di sini, buf adalah daripada jenis []bait, dan ralat ialah ralat jenis, jadi tugasan itu sah. Setelah anda membaca kandungan fail, anda boleh menukarnya kepada rentetan jika perlu:

<code class="go">z = string(buf)</code>
Salin selepas log masuk

Sebagai alternatif, anda boleh bekerja secara langsung dengan buf, yang mewakili bait mentah kandungan fail, tanpa menukarnya kepada seutas tali. Ini boleh meningkatkan prestasi dan mengelakkan kemungkinan isu penukaran.

Atas ialah kandungan terperinci Mengapakah saya mendapat ralat \'Tidak boleh menetapkan []bait kepada z (rentetan jenis) dalam berbilang tugasan\' semasa membaca fail dalam Go?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan