|
ExpandPath
DescriptionCreates
an absolute, platform-appropriate path that is equivalent to the
value of relative_path, appended to the base path. This function
(despite its name) can accept an absolute or relative path in the relative_path parameter
The
base path is the currently executing page’s directory path. It is
stored in pageContext.getServletContext().
ReturnsA string.
If the relative path contains a trailing forward slash or backward
slash, the return value contains the same trailing character.
Function syntaxExpandPath(relative_path)
HistoryColdFusion
MX: Changed behavior for the relative_path parameter: this
function can now accept an absolute or relative path in the relative_path parameter.
To resolve a path, this function uses virtual mappings that are
defined in the ColdFusion Administrator. This function does not
reliably use virtual mappings that are defined in IIS, Apache, or
other web servers.
Parameters
Parameter
|
Description
|
relative_path
|
Relative or absolute directory reference
or filename, within the current directory, (.\ and ..\) to convert
to an absolute path. Can include forward or backward slashes.
|
UsageIf the
parameter or the returned path is invalid, the function throws an
error. You cannot use this function with in-memory files.
These
examples show the valid constructions of relative_path:
ExpandPath( "*.*")
ExpandPath( "/")
ExpandPath( "\")
ExpandPath( "/mycfpage.cfm")
ExpandPath( "mycfpage.cfm")
ExpandPath( "myDir/mycfpage.cfm")
ExpandPath( "/myDir/mycfpage.cfm")
ExpandPath( "../../mycfpage.cfm")
Example<h3>ExpandPath Example</h3>
<cfset thisPath=ExpandPath("*.*")>
<cfset thisDirectory=GetDirectoryFromPath(thisPath)>
<cfoutput>
The current directory is: #GetDirectoryFromPath(thisPath)#
<cfif IsDefined("form.yourFile") AND form.yourFile is not "">
<cfset yourFile = form.yourFile>
<cfif FileExists(ExpandPath(yourfile))>
<p>Your file exists in this directory. You entered
the correct filename, #GetFileFromPath("#thisPath#/#yourfile#")#
<cfelse>
<p>Your file was not found in this directory:
<br>Here is a list of the other files in this directory:
<!--- use cfdirectory to give the contents of the
snippets directory, order by name and size --->
<cfdirectory directory="#thisDirectory#"
name="myDirectory"
sort="name ASC, size DESC">
<!--- Output the contents of the cfdirectory as a cftable --->
<cftable query="myDirectory">
<cfcol header="NAME:"
text="#Name#">
<cfcol header="SIZE:"
text="#Size#">
</cftable>
</cfif>
</cfif>
</cfoutput>
<form action="expandpath.cfm" method="post">
<h3>Enter the name of a file in this directory <i>
<font size="-1">(try expandpath.cfm)</font></i></h3>
<input type="text" name="yourFile">
<input type="submit" name="">
</form>
|