- Forward


Files and File Systems in Java
An Introduction


Prof. David Bernstein
James Madison University

Computer Science Department
bernstdh@jmu.edu

Print

File Systems
Back SMYC Forward
  • Definitions:
    • A file is a coherent collection of information that can be identified by a name
    • A file system is a method for storing and organizing files
    • A directory (or folder) is a group of files and/or directories
  • Examples:
    • MS-Windows: FAT and NTFS
    • OS X: HFS Plus
    • CD-ROM: ISO 9660
Files and Directories in Java
Back SMYC Forward
  • The File java.io.File and Files java.nio.file.Files Classes:
    • A File object is an encapsulation of a file/directory handle (not an actual file on the file system)
    • The Files class is a utility class for operating on File and Path objects
  • Important Concepts:
    • The working directory is named "." (and it's parent is named "..")
    • Absolute (starting with a '/' in UNIX, ':' or ":\" in MS-Windows, and "\\" for UNC) and Relative Pathnames
    • The Separator Character ('/' on UNIX, '\' on MS-Windows)
    • The Path-Separator Character (':' on UNIX, ';' on MS-Windows)
  • Constructing a File Object:
    • File(java.lang.String) java.io.File#File(java.lang.String)
    • File(java.lang.String, java.lang.String) java.io.File#File(java.lang.String, java.lang.String)
Operating on File Objects
Back SMYC Forward
  • Checking Attributes:
    • File.canRead() java.io.File#canRead()
    • File.canWrite() java.io.File#canWrite()
    • File.exists() java.io.File#exists()
    • File.isDirectory() java.io.File#isDirectory()
    • File.isFile() java.io.File#isFile()
    • File.isHidden() java.io.File#isHidden()
    • File.lastModified() java.io.File#lastModified()
  • Modify Attributes:
    • File.renameTo(java.io.File) java.io.File#renameTo(java.io.File)
    • File.setReadOnly() java.io.File#setReadOnly()
    • File.setLastModified(long) java.io.File#setLastModified(long)
Operating on File Objects (cont.)
Back SMYC Forward
  • Creating:
    • A directory can be created using File.mkdir() java.io.File#mkdir()
    • A file is created by writing to it
  • Deleting:
    • File.delete() java.io.File#delete()
  • Working with Directories:
    • File.list() java.io.File#list() returns a String[]
    • File.listFiles() java.io.File#listFiles() returns a File[]
Operating on File Objects (cont.)
Back SMYC Forward

An Example

javaexamples/iobasics/Dir.java
 
Operating on the File System
Back SMYC Forward
  • Copying:
    • Files.copy(java.nio.file.Path, java.nio.file.Path, java.nio.file.CopyOption...) java.nio.file.Files#copy(java.nio.file.Path, java.nio.file.Path, java.nio.file.CopyOption...)
  • Creating Links and Symbolic Links:
    • Files.createLink(java.nio.file.Path, java.nio.file.Path) java.nio.file.Files#createLink(java.nio.file.Path, java.nio.file.Path)
    • Files.createSymbolicLink(java.nio.file.Path, java.nio.file.Path, java.nio.file.attribute.FileAttribute...) java.nio.file.Files#createSymbolicLink(java.nio.file.Path, java.nio.file.Path, java.nio.file.attribute.FileAttribute...)
There's Always More to Learn
Back -