|
The MapPath method maps the specified relative or virtual path to the corresponding physical directory on the server.
Server.MapPath( path )
path
Specifies the relative or virtual path to map to a physical directory. If path starts with either a forward or backward slash, either (/) or (\), the MapPath method returns a path as if path is a full virtual path. If path doesn't start with a slash, the MapPath method returns a path relative to the directory of the .ASP file being processed.
Note
The path parameter can contain relative paths (../../Scripts/, for example).
The MapPath method does not check whether the path it returns is valid or exists on the server. Because the MapPath method maps a path regardless of whether the specified directories currently exist, you can use the MapPath method to map a path to a physical directory structure, and then pass that path to a component that creates the specified directory or file on the server.
For the examples below, the DATA.TXT and TEST.ASP files are located in the C:\Inetpub\Wwwroot\Script directory. The TEST.ASP file contains scripts. The C:\Inetpub\Wwwroot directory is set as the server's home directory.
The following example uses the server variable PATH_INFO to map the physical path to the current file:
<%= server.mappath(Request.ServerVariables("PATH_INFO"))%>
<BR>
This script produces the following:
c:\inetpub\wwwroot\script\test.asp<BR>
Because the path parameters in the following examples do not start with a slash character, they are mapped relative to the current directory, in this case C:\Inetpub\Wwwroot\Script.
<%= server.mappath("data.txt")%><BR>
<%= server.mappath("script/data.txt")%><BR>
This script outputs the following:
c:\inetpub\wwwroot\script\data.txt<BR>
c:\inetpub\wwwroot\script\script\data.txt<BR>
The next two scripts use the slash characters to specify that the paths returned should be looked up as complete virtual paths on the server:
<%= server.mappath("/script/data.txt")%><BR>
<%= server.mappath("\script")%><BR>
This script outputs the following:
c:\inetpub\script\data.txt<BR>
c:\inetpub\script<BR>
The following examples demonstrate how you can use either a forward slash (/) or a backslash (\) to return the physical path to the home directory. The following script:
<%= server.mappath("/")%><BR>
<%= server.mappath("\")%><BR>
produces the following output:
c:\inetpub\wwwroot<BR>
c:\inetpub\wwwroot<BR>
Copyright 2002 Sun Microsystems, Inc. All rights reserved. Legal Notice.