public interface Path
Path
represents the path part of a URI. This provides
the various components of the URI path to the user. The normalization
of the path is the conversion of the path given into it's actual path by
removing the references to the parent directories and to the current dir.
If the path that this represents is /usr/bin/../etc/./README
then the actual path, normalized, is /usr/etc/README
. Once
the path has been normalized it is possible to acquire the segments as
an array of strings, which allows simple manipulation of the path.
PathParser
Modifier and Type | Method and Description |
---|---|
String |
getDirectory()
This will return the highest directory that exists within
the path.
|
String |
getExtension()
This will return the extension that the file name contains.
|
String |
getName()
This will return the full name of the file without the path.
|
String |
getPath()
This will return the normalized path.
|
String |
getPath(int from)
This will return the normalized path from the specified path
segment.
|
String |
getPath(int from,
int count)
This will return the normalized path from the specified path
segment.
|
String |
getRelative(String path)
This will return the path as it is relative to the issued
path.
|
String[] |
getSegments()
This method is used to break the path into individual parts
called segments, see RFC 2396.
|
String |
toString()
This will return the normalized path.
|
String getExtension()
file.en_US.extension
will produce an extension of extension
. This
will return null if the path contains no file extension.String getName()
/usr/README
the name is README
.
Also for directorys the name of the directory in the last
path segment is returned. This returns the name without any
of the path parameters. As RFC 2396 defines the path to have
path parameters after the path segments.String getPath()
/usr/../etc/./
the
path is /etc/
. If the path that this represents
is a path with an immediate back reference then this will
return null. This is the path with all its information even
the parameter information if it was defined in the path.../
or ./
String getPath(int from)
substring
invocations. Of particular
interest is the extraction of context based paths. This is
the path with all its information even the parameter
information if it was defined in the path.from
- this is the segment offset to get the path for../
or ./
String getPath(int from, int count)
substring
invocations. Of particular
interest is the extraction of context based paths. This is
the path with all its information even the parameter
information if it was defined in the path.from
- this is the segment offset to get the path forcount
- this is the number of path segments to include../
or ./
String[] getSegments()
/usr/bin/../etc
then the segments
returned would be usr
and etc
as
the path is normalized before the segments are extracted.String getDirectory()
/pub/./bin/README
would be to return
the highest directory path /pub/bin/
. The "/"
character will allways be the last character in the path.String getRelative(String path)
getDirectory
. This is useful if paths
that are relative to a specific location are required. To
illustrate what this method will do the following example
is provided. If this object represented the path string
/usr/share/rfc/rfc2396.txt
and the issued
path was /usr/share/text.txt
then this will
return the path string /rfc/rfc2396.txt
.path
- the path prefix to acquire a relative pathString toString()
/usr/../etc/./
the
path is /etc/
. If the path that this represents
is a path with an immediate back reference then this will
return null. This is the path with all its information even
the parameter information if it was defined in the path.Copyright © 2024. All rights reserved.