GoDasturchi
io Package Utilities

io Package Utilities

io paketining yordamchi vositalari

io paketida io.Copydan tashqari yana foydali funksiyalar bor. io.ReadAll istalgan io.Readerdan (nafaqat faylдан) hamma ma'lumotni o'qib, []byte qilib beradi.

example.go
package main

import (
	"fmt"
	"io"
	"os"
)

func main() {
	os.WriteFile("readme.txt", []byte("Bu butun fayl mazmuni."), 0644)

	f, err := os.Open("readme.txt")
	if err != nil {
		fmt.Println("xato:", err)
		return
	}
	defer f.Close()

	data, err := io.ReadAll(f)
	if err != nil {
		fmt.Println("xato:", err)
		return
	}
	fmt.Println(string(data))
}

io.ReadAll(f) va os.ReadFile(yo'l) bir xil natija beradi, lekin farqi shunda: os.ReadFile yo'l (string) qabul qiladi va faylni o'zi ochib-yopadi, io.ReadAll esa allaqachon ochilgan istalgan io.Readerni qabul qiladi — masalan tarmoq javobi yoki boshqa dastur chiqishi. Reader tugagach, u ichida maxsus io.EOF ("End Of File", fayl tugadi) signali ishlatiladi — lekin ReadAll buni siz uchun avtomatik boshqaradi.

>_ Exercise

Fayl mazmunini io.ReadAll bilan o'qing va uzunligini chiqaring.

  • story.txt ni os.Open bilan oching
  • io.ReadAll bilan mazmunini o'qing
  • mazmunni va uning uzunligini (len) chop eting

Stuck? Reveal a hint to help you.

Hints (0/3)

Key Takeaway

Key Takeaway:

io.ReadAll — allaqachon ochilgan istalgan io.Readerdan hammasini o'qishning universal usuli.

NEXT UP

bytes.Buffer for Building Data

OUTPUT

$ go run main.go
Kodingizni ishga tushiring

io Package Utilities

io paketining yordamchi vositalari

io paketida io.Copydan tashqari yana foydali funksiyalar bor. io.ReadAll istalgan io.Readerdan (nafaqat faylдан) hamma ma'lumotni o'qib, []byte qilib beradi.

example.go
package main

import (
	"fmt"
	"io"
	"os"
)

func main() {
	os.WriteFile("readme.txt", []byte("Bu butun fayl mazmuni."), 0644)

	f, err := os.Open("readme.txt")
	if err != nil {
		fmt.Println("xato:", err)
		return
	}
	defer f.Close()

	data, err := io.ReadAll(f)
	if err != nil {
		fmt.Println("xato:", err)
		return
	}
	fmt.Println(string(data))
}

io.ReadAll(f) va os.ReadFile(yo'l) bir xil natija beradi, lekin farqi shunda: os.ReadFile yo'l (string) qabul qiladi va faylni o'zi ochib-yopadi, io.ReadAll esa allaqachon ochilgan istalgan io.Readerni qabul qiladi — masalan tarmoq javobi yoki boshqa dastur chiqishi. Reader tugagach, u ichida maxsus io.EOF ("End Of File", fayl tugadi) signali ishlatiladi — lekin ReadAll buni siz uchun avtomatik boshqaradi.

>_ Exercise

Fayl mazmunini io.ReadAll bilan o'qing va uzunligini chiqaring.

  • story.txt ni os.Open bilan oching
  • io.ReadAll bilan mazmunini o'qing
  • mazmunni va uning uzunligini (len) chop eting

Stuck? Reveal a hint to help you.

Hints (0/3)

Key Takeaway

Key Takeaway:

io.ReadAll — allaqachon ochilgan istalgan io.Readerdan hammasini o'qishning universal usuli.

NEXT UP

bytes.Buffer for Building Data