The io package is for performing primitive file I/O operations, whereas the bufio package is for executing buffered I/O.
In buffered I/O, the operating system uses an intermediate buffer during file read and write operations in order to reduce the number of filesystem calls. As a result, buffered input and output is faster and more efficient.
Additionally, you can use some of the functions of the fmt package to write text to a file. Note that the flag package will be also used in this chapter as well as in all the forthcoming ones where the developed utilities need to support command-line flags.