October 2015
Beginner to intermediate
400 pages
14h 44m
English
Consider the set of errors returned by file operations in the
os package.
I/O can fail for any number of reasons, but three kinds of failure
often must be handled differently: file already exists (for create
operations), file not found (for read operations), and permission
denied.
The os package provides these three helper functions to
classify the failure indicated by a given error value:
package os func IsExist(err error) bool func IsNotExist(err error) bool func IsPermission(err error) bool
A naïve implementation of one of these predicates might check that the error message contains a certain substring,
func IsNotExist(err error) ...