OS-Agnostic Pathing
Learn about OS-agnostic pathing in Go with the path/filepath package.
We'll cover the following...
One of Go's greatest strengths lies in its multiplatform support. A developer can develop on a Linux workstation and run the same Go program, recompiled into native code, on a Windows server.
One of the areas of difficulty when developing software that runs on multiple OSs is accessing files. Path formats are slightly different for each operating system. The most obvious example is the different file separators for OSs: \
on Windows and /
on Unix-like systems. Less obvious would be how to escape special characters on a particular OS, which can differ even between Unix-based OSs.
The path/filepath
package provides access to functions that will allow us to handle pathing for the native OS. This should not be confused with the root path
package, which looks similar but handles a more general URL-style pathing.
OS/Platform information
While we'll discuss how to gain file access and perform pathing using agnostic functions, it is still ...