Bu derste, Go dilinde dosya işlemlerini nasıl gerçekleştirebileceğinizi öğreneceksiniz. Dosya okuma, yazma, silme ve dosya bilgilerini alma gibi temel dosya işlemlerini göreceksiniz.
Go dilinde bir dosyayı açmak için os
paketini kullanabilirsiniz. Dosya açma işlemi sırasında dosyanın var olup olmadığını kontrol etmek ve dosyayı kapatmak önemlidir.
package main
import (
"fmt"
"os"
)
func main() {
file, err := os.Open("example.txt")
if err != nil {
fmt.Println(err)
return
}
defer file.Close()
fmt.Println("Dosya başarıyla açıldı")
}
Bir dosyayı okumanın birkaç yolu vardır. En yaygın yöntemlerden biri bufio
paketini kullanmaktır.
package main
import (
"bufio"
"fmt"
"os"
)
func main() {
file, err := os.Open("example.txt")
if err != nil {
fmt.Println(err)
return
}
defer file.Close()
scanner := bufio.NewScanner(file)
for scanner.Scan() {
fmt.Println(scanner.Text())
}
if err := scanner.Err(); err != nil {
fmt.Println(err)
}
}
Dosyaya yazmak için os
paketindeki Create
veya OpenFile
fonksiyonlarını kullanabilirsiniz.
package main
import (
"fmt"
"os"
)
func main() {
file, err := os.Create("example.txt")
if err != nil {
fmt.Println(err)
return
}
defer file.Close()
_, err = file.WriteString("Merhaba, Dünya!\n")
if err != nil {
fmt.Println(err)
return
}
fmt.Println("Dosyaya yazma işlemi başarılı")
}
Bir dosyayı silmek için os.Remove
fonksiyonunu kullanabilirsiniz.
package main
import (
"fmt"
"os"
)
func main() {
err := os.Remove("example.txt")
if err != nil {
fmt.Println(err)
return
}
fmt.Println("Dosya başarıyla silindi")
}
Bir dosyanın bilgilerini almak için os.Stat
fonksiyonunu kullanabilirsiniz.
package main
import (
"fmt"
"os"
)
func main() {
fileInfo, err := os.Stat("example.txt")
if err != nil {
fmt.Println(err)
return
}
fmt.Println("Dosya Adı:", fileInfo.Name())
fmt.Println("Dosya Boyutu:", fileInfo.Size())
fmt.Println("Dosya Modu:", fileInfo.Mode())
fmt.Println("Son Değiştirilme Tarihi:", fileInfo.ModTime())
fmt.Println("Bir Dizin mi?:", fileInfo.IsDir())
}
Bu dersin sonunda, Go dilinde dosya işlemlerini nasıl gerçekleştirebileceğinizi öğrenmiş olacaksınız. Bu temel bilgiler, dosya tabanlı uygulamalar geliştirirken size yardımcı olacaktır.