In this course, participants learn more about Java's application programming interface (API) for working with files and directories. You will begin with the Path interface and the Paths.get methods to work with files and directories, which form the foundation of the modern java.nio APIs. You will then discover how to use the methods of the Path interface to normalize, parse, and resolve paths. Next, you will briefly detour into creating files using both the legacy java.io as well as the modern java.nio namespaces. Perform operations such as copying files, checking for their existence, and deleting files using the Files class in the java.nio namespace. Participants will also copy and create directories by using the Files class in the java.nio namespace. You will explore how to get and set file attributes (including both platform-agnostic as well as Portable Operating System Interface attributes), and query file stores for total and free space. Finally, learn how to create directories and iterate over their contents, including via the use of glob specifiers to filter directory contents.