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 ...
Get Mac OS X for Java Geeks now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.