File Separator
You should also learn to use characters in different operating systems to represent a directory path in a file hierarchy. The file separator is always a problem when dealing with multiple platforms.
Consider the following paths, all valid for their respective operating systems:
Windows: C:\myfolder\mydocument.txt
Unix: /usr/myuser/mydocument.txt
Classic Mac OS: Hard Drive:My Folder:My Document
Each path describes a typical location for a user document, located
in a nested folder. Each OS uses a different character to represent a
directory: \, /, or
:. Make sure your application does not make
assumptions about which of these characters to use, but rather relies
on the value returned by the system specific to that platform:
System.getProperty("file.separator");
System.getProperty("path.separator");The file.separator is the
system property
containing the character (or characters) that delimits file and
directory names. This character is usually / or
\. The path.separator is the
character used to separate path entries on a single line (such as
multiple entries in the system’s classpath).
Generally, either you will have a base directory and need to construct paths relative to this directory, or you will work with user-specified files and use standard file dialogs.
Class Loader Issues
When writing Java applications, it’s common to write code that contains a reference to a platform-specific class and then dynamically load that class. Consider the following pseudo-code ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access