Go - Files & I/O
          Beginner 10/10
          Teacher 10/10
          Architect 10/10
        
        
        
        
Try it: Create a file 
note.txt and print its contents with os.ReadFile.Read File
b, err := os.ReadFile("input.txt")
if err != nil { /* handle */ }
fmt.Println(string(b))
Write File
err := os.WriteFile("out.txt", []byte("hello"), 0644)
Streaming
f, _ := os.Open("big.txt")
defer f.Close()
scanner := bufio.NewScanner(f)
for scanner.Scan(){ fmt.Println(scanner.Text()) }
Common errors
- Ignoring errors from file operations—always check and handle err.
- Forgetting to close files when using os.Open.
Practice
- Append a line to a file safely and print the updated content.
Quick quiz
- When do you need to call Close()on a file?
Show answer
When you open a file handle (e.g., withos.Open); not required with os.ReadFile/os.WriteFile.