Go Package os: Difference between revisions
Jump to navigation
Jump to search
Line 32: | Line 32: | ||
if err != nil { | if err != nil { | ||
// ... | // ... | ||
f.Close() | |||
return | |||
} | } | ||
for { | for { | ||
Line 37: | Line 39: | ||
if err != nil { | if err != nil { | ||
fmt.Println(err) | fmt.Println(err) | ||
f.Close() | |||
return | return | ||
} | } |
Revision as of 18:39, 25 August 2023
External
Internal
Overview
Reading and Writing an Entire File in/from Memory
Read with ReadFile()
To read the content of an entire file into a byte slice:
bs, err := os.ReadFile("/Users/ovidiu/tmp/test.txt")
os.ReadFile()
closes the file after use.
Write with WriteFile()
To write in-memory data into a file:
s := "This\nis multi-line\nfile\ncontent\n"
err := os.WriteFile("/Users/ovidiu/tmp/test2.txt", []byte(s), 0777)
os.WriteFile()
closes the file after use.
Reading and Writing Byte Arrays
Reading
bs := make([]byte, 10)
f, err := os.Open("/Users/ovidiu/tmp/test.txt")
if err != nil {
// ...
f.Close()
return
}
for {
cnt, err := f.Read(bs)
if err != nil {
fmt.Println(err)
f.Close()
return
}
fmt.Println("read ", cnt, " bytes")
}
os.ReadFile()
closes the file after use.
Writing
To write in-memory data into a file:
s := "This\nis multi-line\nfile\ncontent\n"
err := os.WriteFile("/Users/ovidiu/tmp/test2.txt", []byte(s), 0777)
os.WriteFile()
closes the file after use.
TO DEPLETE
Functions
os.Open()
Works with files and directories.
os.Create()
os.File
os.File Methods
FileInfo
FileInfo Methods
- Size()
os.Args
os.Args is a string slice that holds the command-line arguments, starting with the program name. For more details on how to use see: