-
Book Overview & Buying
-
Table Of Contents
Go Recipes for Developers
By :
Files are simply sequences of bytes on a storage system. There are two ways of working with files: as a random access byte sequence or as a stream of bytes. We will look at both types of recipes in this section.
To work with the contents of a file, you first have to open it or create it. This recipe shows how that can be done.
To open an existing file for reading, use os.Open:
file, err := os.Open(fileName)
if err!=nil {
// handle error
} You can read data from the returned file object, and when you are done, you should close it using file.Close(). So, you can use it as an io.Reader or io.ReadCloser (there are more interfaces that *os.File implements!)
If you attempt to write to the file, you will receive an error from the write operation. On my Linux system, this error is a *fs.PathError message saying bad file descriptor.
To create a new file or to overwrite an existing one, use os.Create:
file...