ASP 实例


基础

用ASP写文本

<!DOCTYPE html>
<html>
<body>

<%
response.write("Hello World!")
%>

</body>
</html>

向文本添加HTML

<!DOCTYPE html>
<html>
<body>
<%
response.write("<h2>You can use HTML tags to format the text!</h2>")
%>

<%
response.write("<p style='color:#0000ff'>This text is styled with the style attribute!</p>")
%>
</body>
</html>

变量

声明变量
变量用于存储信息。本例演示如何声明变量,为变量赋值,并在程序中使用这个变量。

<!DOCTYPE html>
<html>
<body>

<%
dim name
name="Donald Duck"
response.write("My name is: " & name)
%>

</body>
</html>
My name is: Donald Duck

声明数组
数组用于存储一系列相关的数据项目。本例演示如何声明一个存储名字的数组。

<!DOCTYPE html>
<html>
<body>

<%
Dim famname(5),i
famname(0) = "Jan Egil"
famname(1) = "Tove"
famname(2) = "Hege"
famname(3) = "Stale"
famname(4) = "Kai Jim"
famname(5) = "Borge"

For i = 0 to 5
      response.write(famname(i) & "<br>")
Next
%>

</body>
</html>
Jan Egil
Tove
Hege
Stale
Kai Jim
Borge

循环生成 HTML 标题
本例演示如何循环生成 6 个不同的 HTML 标题。

<!DOCTYPE html>
<html>
<body>

<%
dim i 
for i=1 to 6
   response.write("<h" & i & ">Heading " & i & "</h" & i & ">")
next
%>

</body>
</html>

Heading 1

Heading 2

Heading 3

Heading 4

Heading 5
Heading 6

使用 Vbscript 制作基于时间的问候语
本例演示如何根据服务器时间向用户显示不同的消息。

<!DOCTYPE html>
<html>
<body>
<%
dim h
h=hour(now())

response.write("<p>" & now())
response.write("</p>")
If h<12 then
   response.write("Good Morning!")
else
   response.write("Good day!")
end if
%>
</body>
</html>
9/20/2013 11:08:35 PM
Good day!

使用 JavaScript 制作基于时间的问候语
本例同上,演示如何根据服务器时间向用户显示不同的消息,只是语法不同而已。

<%@ language="javascript" %>
<!DOCTYPE html>
<html>
<body>
<%
var d=new Date()
var h=d.getHours()

Response.Write("<p>")
Response.Write(d)
Response.Write("</p>")
if (h<12)
   {
   Response.Write("Good Morning!")
   }
else
   {
   Response.Write("Good day!")
   }
%>
</body>
</html>
Fri Sep 20 23:08:38 EDT 2013
Good day!


Date/Time 函数(VBScript)

日期和时间

<!DOCTYPE html>
<html>
<body>

Today's date is: <%response.write(date())%>.
<br>
The server's local time is: <%response.write(time())%>.

</body>
</html>

获得天的名字

<!DOCTYPE html>
<html>
<body>

<p>
VBScripts' function <b>WeekdayName</b> is used to get a weekday:
</p>
<%
response.Write(WeekDayName(1))
response.Write("<br>")
response.Write(WeekDayName(2))
%>

<p>Abbreviated name of a weekday:</p>
<%
response.Write(WeekDayName(1,true))
response.Write("<br>")
response.Write(WeekDayName(2,true))
%>

<p>Current weekday:</p>
<%
response.Write(WeekdayName(weekday(date)))
response.Write("<br>")
response.Write(WeekdayName(weekday(date), true))
%>

</body>
</html>

获得月的名字

<!DOCTYPE html>
<html>
<body>

<p>VBScripts' function <b>MonthName</b> is used to get a month:</p>
<%
response.Write(MonthName(1))
response.Write("<br>")
response.Write(MonthName(2))
%>

<p>Abbreviated name of a month:</p>
<%
response.Write(MonthName(1,true))
response.Write("<br>")
response.Write(MonthName(2,true))
%>

<p>Current month:</p>
<%
response.Write(MonthName(month(date)))
response.Write("<br>")
response.Write(MonthName(month(date), true))
%>

</body>
</html>

获得今天的月和天

<!DOCTYPE html>
<html>
<body>

Today it is
<%response.write(WeekdayName(weekday(date)))%>,
<br>
and the month is
<%response.write(MonthName(month(date)))%>

</body>
</html>

3000年倒计时

<!DOCTYPE html>
<html>
<body>

<p>Countdown to year 3000:</p>

<p>
<%millennium=cdate("1/1/3000 00:00:00")%>

It is
<%response.write(DateDiff("yyyy", Now(), millennium))%>
years to year 3000!
<br>
It is
<%response.write(DateDiff("m", Now(), millennium))%>
months to year 3000!
<br>
It is
<%response.write(DateDiff("ww", Now(), millennium))%>
weeks to year 3000!
<br>
It is
<%response.write(DateDiff("d", Now(), millennium))%>
days to year 3000!
<br>
It is
<%response.write(DateDiff("h", Now(), millennium))%>
hours to year 3000!
<br>
It is
<%response.write(DateDiff("n", Now(), millennium))%>
minutes to year 3000!
<br>
It is
<%response.write(DateDiff("s", Now(), millennium))%>
seconds to year 3000!
</p>

</body>
</html>

从今天起计算N天后

<!DOCTYPE html>
<html>
<body>
<%
response.write(DateAdd("d",30,date()))
%>

<p>
Syntax for DateAdd: DateAdd(interval,number,date). You can use <b>DateAdd</b> to for example calculate a date 30 days from today.
</p>

</body>
</html>

格式化日期和时间

<!DOCTYPE html>
<html>
<body>

<%
response.write(FormatDateTime(date(),vbgeneraldate))
response.write("<br>")
response.write(FormatDateTime(date(),vblongdate))
response.write("<br>")
response.write(FormatDateTime(date(),vbshortdate))
response.write("<br>")
response.write(FormatDateTime(now(),vblongtime))
response.write("<br>")
response.write(FormatDateTime(now(),vbshorttime))
%>

<p>
Syntax for FormatDateTime: FormatDateTime(date,namedformat).
</p>

</body>
</html>

这是一个日期吗?

<!DOCTYPE html>
<html>
<body>

<%
somedate="10/30/99"
response.write(IsDate(somedate))
%>

</body>
</html>

其他函数(VBScript)

大写或小写的字符串

<!DOCTYPE html>
<html>
<body>

<%
name = "Bill Gates"
response.write(ucase(name))
response.write("<br>")
response.write(lcase(name))
%>

</body>
</html>

字符串去掉前后空格

<!DOCTYPE html>
<html>
<body>

<%
name = " jianzhan "
response.write("visit" & name & "now<br>")
response.write("visit" & trim(name) & "now<br>")
response.write("visit" & ltrim(name) & "now<br>")
response.write("visit" & rtrim(name) & "now")
%>

</body>
</html>

如何转化一个字符串?

<!DOCTYPE html>
<html>
<body>

<%
sometext = "Hello Everyone!"
response.write(strReverse(sometext))
%>

</body>
</html>

四舍五入

<!DOCTYPE html>
<html>
<body>

<%
i = 48.66776677
j = 48.3333333
response.write(Round(i))
response.write("<br>")
response.write(Round(j))
%>

</body>
</html>

一个随机数

<!DOCTYPE html>
<html>
<body>

<%
randomize()
response.write(rnd())
%>

</body>
</html>

从一个字符串返回特定的字符

<!DOCTYPE html>
<html>
<body>

<%
sometext="Welcome to this Web"
response.write(Left(sometext,5))
response.write("<br>")
response.write(Right(sometext,5))
%>

</body>
</html>

替换字符串的特定字符

<!DOCTYPE html>
<html>
<body>

<%
sometext="Welcome to this Web!!"
response.write(Replace(sometext, "Web", "Page"))
%>

</body>
</html>

从字符串中返回指定数目的字符

<!DOCTYPE html>
<html>
<body>

<%
sometext="Welcome to this Web!!"
response.write(Mid(sometext, 9, 2))
%>

</body>
</html>

程序

调用使用VBScript的子程序

<!DOCTYPE html>
<html>
<head>
<%
sub vbproc(num1,num2)
response.write(num1*num2)
end sub
%>
</head>

<body>
<p>You can call a procedure like this:</p>
<p>Result: <%call vbproc(3,4)%></p>
<p>Or, like this:</p>
<p>Result: <%vbproc 3,4%></p>
</body>
</html>

调用使用JavaScript的子程序

<%@ language="javascript" %>
<!DOCTYPE html>
<html>
<head>
<%
function jsproc(num1,num2)
{
Response.Write(num1*num2)
}
%>
</head>

<body>
<p>Result: <%jsproc(3,4)%></p>
</body>
</html>

调用使用VBScript和JavaScript的子程序

<!DOCTYPE html>
<html>
<head>
<%
sub vbproc(num1,num2)
Response.Write(num1*num2)
end sub
%>
<script  language="javascript" runat="server">
function jsproc(num1,num2)
{
Response.Write(num1*num2)
}
</script>
</head>

<body>
<p>Result: <%call vbproc(3,4)%></p>
<p>Result: <%call jsproc(3,4)%></p>
</body>

</html>

表单

使用method="get"的表单

<!DOCTYPE html>
<html>
<body>
<form action="demo_reqquery.asp" method="get">
Your name: <input type="text" name="fname" size="20" />
<input type="submit" value="Submit" />
</form>
<%
dim fname
fname=Request.QueryString("fname")
If fname<>"" Then
      Response.Write("Hello " & fname & "!<br>")
      Response.Write("How are you today?")
End If
%>
</body>
</html>

使用method="post"的表单

<!DOCTYPE html>
<html>
<body>
<form action="demo_simpleform.asp" method="post">
Your name: <input type="text" name="fname" size="20" />
<input type="submit" value="Submit" />
</form>
<%
dim fname
fname=Request.Form("fname")
If fname<>"" Then
      Response.Write("Hello " & fname & "!<br>")
      Response.Write("How are you today?")
End If
%>
</body>
</html>

使用单选按钮的表单

<!DOCTYPE html>
<html>
<%
dim cars
cars=Request.Form("cars")
%>
<body>
<form action="demo_radiob.asp method="post">
<p>Please select your favorite car:</p>

<input type="radio" name="cars"
<%if cars="Volvo" then Response.Write("checked")%>
value="Volvo">Volvo</input>
<br>
<input type="radio" name="cars"
<%if cars="Saab" then Response.Write("checked")%>
value="Saab">Saab</input>
<br>
<input type="radio" name="cars"
<%if cars="BMW" then Response.Write("checked")%>
value="BMW">BMW</input>
<br><br>
<input type="submit" value="Submit" />
</form>
<%
if cars<>"" then
   Response.Write("<p>Your favorite car is: " & cars & "</p>")
end if
%>
</body>
</html>

Cookie

Welcome cookie

<%
dim numvisits
response.cookies("NumVisits").Expires=date+365 
numvisits=request.cookies("NumVisits")

if numvisits="" then
   response.cookies("NumVisits")=1
   response.write("Welcome! This is the first time you are visiting this Web page.")
else
   response.cookies("NumVisits")=numvisits+1
   response.write("You have visited this ")
   response.write("Web page " & numvisits)
   if numvisits=1 then
     response.write " time before!"
   else
     response.write " times before!"
   end if
end if
%>
<!DOCTYPE html>
<html>
<body>
</body>
</html>

Response 对象

使用 ASP 写文本
本例演示如何使用 ASP 来写文本。

<!DOCTYPE html>
<html>
<body>

<%
response.write("Hello World!")
%>

</body>
</html>
Hello World!

在 ASP 中使用 HTML 标签格式化文本
本例演示如何使用 ASP 将文本和 HTML 标签结合起来。

<!DOCTYPE html>
<html>
<body>
<%
response.write("<h2>You can use HTML tags to format the text!</h2>")
%>

<%
response.write("<p style='color:#0000ff'>This text is styled with the style attribute!</p>")
%>
</body>
</html>

You can use HTML tags to format the text!

This text is styled with the style attribute!

将用户重定向至一个不同的 URL
本例演示如何将用户重定向至一个不同的 URL。

<%
if Request.Form("select")<>"" then
       Response.Redirect(Request.Form("select"))
end if
%>   

<!DOCTYPE html>
<html>
<body>

<form action="demo_redirect.asp" method="post">

<input type="radio" name="select" 
value="demo_server.asp">
Server Example<br>

<input type="radio" name="select" 
value="demo_text.asp">
Text Example<br><br>
<input type="submit" value="Go!">

</form>

</body>
</html>

显示随机的链接
本例演示如何创建一个随机的链接。

<!DOCTYPE html>
<html>
<body>

<%
randomize()
r=rnd()
if r>0.5 then
  response.write("<a href='http://www.shouce.ren'>jianzhan.cc!</a>")
else
  response.write("<a href='http://www.refsnesdata.no'>Refsnesdata.no!</a>")
end if
%>

<p>
This example demonstrates a link, each time you load the page, it will display 
one of two links: jianzhan.cc! OR Refsnesdata.no! There is a 50% chance for 
each of them.
</p>

</body>
</html>

控制缓冲区
本例演示如何控制缓冲区。

<%
Response.Buffer=true
%>
<!DOCTYPE html>
<html>
<body>
<p>
This text will be sent to your browser when my response buffer is flushed.
</p>
<%
Response.Flush
%>
</body>
</html>

清空缓冲区
本例演示如何清空缓冲区。

<%
Response.Buffer=true
%>
<!DOCTYPE html>
<html>
<body>
<p>This is some text I want to send to the user.</p>
<p>No, I changed my mind. I want to clear the text.</p>
<%
Response.Clear
%>
</body>
</html>

在处理过程中终止脚本并返回结果
本例演示如何在处理过程中终止脚本。

<!DOCTYPE html>
<html>
<body>
<p>I am writing some text. This text will never be<br>
<%
Response.End
%>
finished! It's too late to write more!</p>
</body>
</html>

设置页面在失效前在浏览器中缓存时间
本例演示如何规定页面在失效前在浏览器中的缓存时间。

<%Response.Expires=-1%>
<!DOCTYPE html>
<html>
<body>
<p>This page will be refreshed with each access!</p>
</body>
</html>

设置页面缓存在浏览器中的失效日期或时间
本例演示如何规定页面缓存在浏览器中的失效时间日期或时间。

<%Response.Expires=-1%>
<!DOCTYPE html>
<html>
<body>
<p>This page will be refreshed with each access!</p>
</body>
</html>

检查用户是否仍然与服务器连接
本例演示如何检查用户是否已与服务器断开。

<!DOCTYPE html>
<html>
<body>

<%
If Response.IsClientConnected=true then
Response.Write("The user is still connected!")
else
Response.Write("The user is not connected!")
end if
%>

</body>
</html>

设置内容类型
本例演示如何规定内容的类型。

<%
Response.ContentType="text/html"
%>
<!DOCTYPE html>
<html>
<body>

<p>This is some text</p>

</body>
</html>

设置字符集名称
本例演示如何规定字符集的名称。

<%
Response.Charset="ISO8859-1"
%>
<!DOCTYPE html>
<html>
<body>

<p>This is some text</p>

</body>
</html>

Request 对象

当用户点击链接时发送查询信息
本例演示如何在链接中向页面发送查询信息,并在目标页面中取回这些信息(在本例中是同一页面)。

<!DOCTYPE html>
<html>
<body>

<a href="demo_simplequerystring.asp?color=green">Example</a>

<%
Response.Write(Request.QueryString)
%>

</body>
</html>

QueryString 集合的简单应用
本例演示如何使用 QueryString 集合从表单取回值。(此表单使用 GET 方法,这意味着所发送的信息对用户来说是可见的。)

<!DOCTYPE html>
<html>
<body>

<form action="demo_simplereqquery.asp" method="get">
First name: <input type="text" name="fname"><br>
Last name: <input type="text" name="lname"><br>
<input type="submit" value="Submit">
</form>

<%
Response.Write(Request.QueryString)
%>

</body>
</html>

如何使用来自表单的信息
本例演示如何使用从表单取回的值。此表单使用 GET 方法。

<!DOCTYPE html>
<html>
<body>

<form action="demo_simplereqquery.asp" method="get">
First name: <input type="text" name="fname"><br>
Last name: <input type="text" name="lname"><br>
<input type="submit" value="Submit">
</form>

<%
Response.Write(Request.QueryString)
%>

</body>
</html>

来自表单的更多信息
本例演示如果输入字段包含若干相同的名称,QueryString 集合会包含什么内容。它将展示如何使用 Count 关键词来对 "name" 属性进行计数。此表单使用 GET 方法。

<!DOCTYPE html>
<html>
<body>

<%
If Request.QueryString<>"" Then
      If Request.QueryString("name")<>", " Then
           name1=Request.QueryString("name")(1)
           name2=Request.QueryString("name")(2)
      end if
end if
%>

<form action="demo_reqquery2.asp" method="get">
First name:
<input type="text" name="name" value="<%=name1%>" />
<br>
Last name:
<input type="text" name="name" value="<%=name2%>" />
<br>
<input type="submit" value="Submit" />
</form>
<hr>
<%
If Request.QueryString<>"" Then
      Response.Write("<p>")
      Response.Write("The information received from the form was:")
      Response.Write("</p><p>")
      Response.Write("name=" & Request.QueryString("name"))
      Response.Write("</p><p>")
      Response.Write("The name property's count is: ")
      Response.Write(Request.QueryString("name").Count)
      Response.Write("</p><p>")
      Response.Write("First name=" & name1)
      Response.Write("</p><p>")
      Response.Write("Last name=" & name2)
      Response.Write("</p>")
end if
%>
</body>
</html>

在线实例

Form 集合的简单应用
本例演示如何使用 Form 集合从表单取回值。(此表单使用 POST 方法,这意味着所发送的信息对用户来说是不可见的。)

<!DOCTYPE html>
<html>
<body>

<form action="demo_simpleform1.asp" method="post">
First name:
<input type="text" name="fname" value="Donald" />
<br>
Last name:
<input type="text" name="lname" value="Duck" />
<br>
<input type="submit" value="Submit" />
</form>

<%
Response.Write(Request.Form)
%>

</body>
</html>

如何使用来自表单的信息
本例演示如何使用从表单取回的值。此表单使用了 POST 方法。

<!DOCTYPE html>
<html>
<body>
<form action="demo_simpleform.asp" method="post">
Your name: <input type="text" name="fname" size="20" />
<input type="submit" value="Submit" />
</form>
<%
dim fname
fname=Request.Form("fname")
If fname<>"" Then
      Response.Write("Hello " & fname & "!<br>")
      Response.Write("How are you today?")
End If
%>
</body>
</html>

来自表单的更多信息
本例演示如果输入字段包含若干相同的名称,Form 集合会包含什么内容。它将展示如何使用 Count 关键词来对 "name" 属性进行计数。此表单使用了 POST 方法。

<!DOCTYPE html>
<html>
<body>

<form action="demo_form2.asp" method="post">
First name:
<input type="text" name="name" value="Donald" />
<br>
Last name:
<input type="text" name="name" value="Duck" />
<br>
<input type="submit" value="Submit" />
</form>
<hr>

<p>The information received from the form above was:</p>
<%
If Request.Form("name")<>"" Then
      Response.Write("<p>")
      Response.Write("name=" & Request.Form("name"))
      Response.Write("</p><p>")
      Response.Write("The name property's count is: ")
      Response.Write(Request.Form("name").Count)
      Response.Write("</p><p>")
      Response.Write("First name=" & Request.Form("name")(1))
      Response.Write("</p><p>") 
      Response.Write("Last name=" & Request.Form("name")(2))
      Response.Write("</p>") 
End if
%>

</body>
</html>

带有单选按钮的表单
本例演示如何使用 Form 集合通过单选按钮与用户进行交互。此表单使用 POST 方法。

<!DOCTYPE html>
<html>
<%
dim cars
cars=Request.Form("cars")
%>
<body>
<form action="demo_radiob.asp method="post">
<p>Please select your favorite car:</p>

<input type="radio" name="cars"
<%if cars="Volvo" then Response.Write("checked")%>
value="Volvo">Volvo</input>
<br>
<input type="radio" name="cars"
<%if cars="Saab" then Response.Write("checked")%>
value="Saab">Saab</input>
<br>
<input type="radio" name="cars"
<%if cars="BMW" then Response.Write("checked")%>
value="BMW">BMW</input>
<br><br>
<input type="submit" value="Submit" />
</form>
<%
if cars<>"" then
   Response.Write("<p>Your favorite car is: " & cars & "</p>")
end if
%>
</body>
</html>

带有复选框的表单
本例演示如何使用 Form 集合通过复选框与用户进行交互。此表单使用 POST 方法。

<!DOCTYPE html>
<html>
<body>
<%
fruits=Request.Form("fruits")
%>

<form action="demo_checkboxes.asp" method="post">
<p>Which of these fruits do you prefer:</p>
<input type="checkbox" name="fruits" value="Apples"
<%if instr(fruits,"Apple") then Response.Write("checked")%>>
Apple
<br>
<input type="checkbox" name="fruits" value="Oranges"
<%if instr(fruits,"Oranges") then Response.Write("checked")%>>
Orange
<br>
<input type="checkbox" name="fruits" value="Bananas"
<%if instr(fruits,"Banana") then Response.Write("checked")%>>
Banana
<br>
<input type="submit" value="Submit">
</form>
<%
if fruits<>"" then%>
   <p>You like: <%Response.Write(fruits)%></p>
<%end if
%>

</body>
</html>

在线实例

获取服务器变量
本例演示如何取得访客的浏览器类型、IP 地址等信息。

<!DOCTYPE html>
<html>
<body>
<p>
<b>You are browsing this site with:</b>
<%Response.Write(Request.ServerVariables("http_user_agent"))%>
</p>
<p>
<b>Your IP address is:</b>
<%Response.Write(Request.ServerVariables("remote_addr"))%>
</p>
<p>
<b>The DNS lookup of the IP address is:</b>
<%Response.Write(Request.ServerVariables("remote_host"))%>
</p>
<p>
<b>The method used to call the page:</b>
<%Response.Write(Request.ServerVariables("request_method"))%>
</p>
<p>
<b>The server's domain name:</b>
<%Response.Write(Request.ServerVariables("server_name"))%>
</p>
<p>
<b>The server's port:</b>
<%Response.Write(Request.ServerVariables("server_port"))%>
</p>
<p>
<b>The server's software:</b>
<%Response.Write(Request.ServerVariables("server_software"))%>
</p>

</body>
</html>
You are browsing this site with:
Your IP address is: 42.120.45.233
The DNS lookup of the IP address is: 42.120.45.233
The method used to call the page: GET
The server's domain name: shouce.ren
The server's port: 80
The server's software: Microsoft-IIS/7.5

创建 welcome cookie
本例演示如何创建一个 Welcome Cookie。

<%
dim numvisits
response.cookies("NumVisits").Expires=date+365 
numvisits=request.cookies("NumVisits")

if numvisits="" then
   response.cookies("NumVisits")=1
   response.write("Welcome! This is the first time you are visiting this Web page.")
else
   response.cookies("NumVisits")=numvisits+1
   response.write("You have visited this ")
   response.write("Web page " & numvisits)
   if numvisits=1 then
     response.write " time before!"
   else
     response.write " times before!"
   end if
end if
%>
<!DOCTYPE html>
<html>
<body>
</body>
</html>

探测用户发送的字节总数
本例演示如何探测用户在 Request 对象中发送的字节总数。

<!DOCTYPE html>
<html>
<body>

<form action="demo_totalbytes.asp" method="post">
Please type something:
<input type="text" name="txt"><br><br>
<input type="submit" value="Submit">
</form>

<%
If Request.Form("txt")<>"" Then
   Response.Write("You submitted: ")
   Response.Write(Request.Form)
   Response.Write("<br><br>")
   Response.Write("Total bytes: ")
   Response.Write(Request.Totalbytes)
End If
%>

</body>
</html>

Session 对象

设置并返回 LCID
本例演示 "LCID" 属性。该属性设置并返回一个指示位置或者地区的整数。类似于日期、时间和货币等内容都要根据位置或者地区来显示。

<!DOCTYPE html>
<html>
<body>

<%  
response.write("<p>")
response.write("The default LCID for this page is: " & Session.LCID & "<br>")
response.write("The Date format for the above LCID is: " & date() & "<br>")
response.write("The Currency format for the above LCID is: " & FormatCurrency(350))
response.write("</p>")

Session.LCID=1036

response.write("<p>")
response.write("The LCID is now changed to: " & Session.LCID & "<br>")
response.write("The Date format for the above LCID is: " & date() & "<br>")
response.write("The Currency format for the above LCID is: " & FormatCurrency(350))
response.write("</p>")

Session.LCID = 3079

response.write("<p>")
response.write("The LCID is now changed to: " & Session.LCID & "<br>")
response.write("The Date format for the above LCID is: " & date() & "<br>")
response.write("The Currency format for the above LCID is: " & FormatCurrency(350))
response.write("</p>")

Session.LCID = 2057

response.write("<p>")
response.write("The LCID is now changed to: " & Session.LCID & "<br>")
response.write("The Date format for the above LCID is: " & date() & "<br>")
response.write("The Currency format for the above LCID is: " & FormatCurrency(350))
response.write("</p>")
%>

</body>
</html>
The default LCID for this page is: 1033
The Date format for the above LCID is: 9/20/2013
The Currency format for the above LCID is: $350.00
The LCID is now changed to: 1036
The Date format for the above LCID is: 20/09/2013
The Currency format for the above LCID is: 350,00 €
The LCID is now changed to: 3079
The Date format for the above LCID is: 20.09.2013
The Currency format for the above LCID is: € 350,00
The LCID is now changed to: 2057
The Date format for the above LCID is: 20/09/2013
The Currency format for the above LCID is: £350.00

返回 SessionID
本例演示 "SessionID" 属性。该属性为每位用户返回一个唯一的 id。这个 id 由服务器生成。

<!DOCTYPE html>
<html>
<body>

<%
Response.Write(Session.SessionID)
%>

</body>
</html>
619100248

session 的超时
本例演示 "Timeout" 属性。该属性设置并返回 session 的超时时间(分钟)。

<!DOCTYPE html>
<html>
<body>

<%  
response.write("<p>")
response.write("Default Timeout is: " & Session.Timeout & " minutes.")
response.write("</p>")

Session.Timeout=30

response.write("<p>")
response.write("Timeout is now: " & Session.Timeout & " minutes.")
response.write("</p>")
%>

</body>
</html>
Default Timeout is: 20 minutes.
Timeout is now: 30 minutes.

Server 对象

此文件最后被修改的时间是?
探测文件的最后修改时间。

<!DOCTYPE html>
<html>
<body>

<%
Set fs = Server.CreateObject("Scripting.FileSystemObject")
Set rs = fs.GetFile(Server.MapPath("demo_lastmodified.asp"))
modified = rs.DateLastModified
%>
This file was last modified on: <%response.write(modified)
Set rs = Nothing
Set fs = Nothing
%>

</body>
</html>

打开并读取某个文本文件
打开文件 "Textfile.txt" 以供读取。

<!DOCTYPE html>
<html>
<body>

<%
Set FS = Server.CreateObject("Scripting.FileSystemObject")
Set RS = FS.OpenTextFile(Server.MapPath("text") & "\TextFile.txt",1)
While not rs.AtEndOfStream
      Response.Write RS.ReadLine
      Response.Write("<br>")
Wend 
%>

<p>
<a href="text/textfile.txt"><img src="/images/btn_view_text.gif"></a>
</p>

</body>
</html>

自制的点击计数器

<%
Set FS=Server.CreateObject("Scripting.FileSystemObject")
Set RS=FS.OpenTextFile(Server.MapPath("counter.txt"), 1, False)
fcount=RS.ReadLine
RS.Close

fcount=fcount+1

'This code is disabled due to the write access security on our server:
'Set RS=FS.OpenTextFile(Server.MapPath("counter.txt"), 2, False)
'RS.Write fcount
'RS.Close

Set RS=Nothing
Set FS=Nothing

%>
<!DOCTYPE html>
<html>
<body>
<p>
This page has been visited <%=fcount%>  times.
</p>
</body>
</html>

FileSystem 对象

指定的文件存在吗?
本例演示如何检查某个文件是否存在。

<!DOCTYPE html>
<html>
<body>

<%
Set fs=Server.CreateObject("Scripting.FileSystemObject")

If (fs.FileExists("c:\winnt\cursors\3dgarro.cur"))=true Then
      Response.Write("File c:\winnt\cursors\3dgarro.cur exists.")
Else
      Response.Write("File c:\winnt\cursors\3dgarro.cur does not exist.")
End If

set fs=nothing
%>

</body>
</html>

指定的文件夹存在吗?
本例演示如何检查某个文件夹是否存在。

<!DOCTYPE html>
<html>
<body>
<%
Set fs=Server.CreateObject("Scripting.FileSystemObject")

If fs.FolderExists("c:\temp") = true Then
      Response.Write("Folder c:\temp exists.")
Else
      Response.Write("Folder c:\temp does not exist.")
End If

set fs=nothing
%>

</body>
</html>

指定的驱动器存在吗?
本例演示如何检查某个驱动器是否存在。

<!DOCTYPE html>
<html>
<body>
<%
Set fs=Server.CreateObject("Scripting.FileSystemObject")

if fs.driveexists("c:") = true then
      Response.Write("Drive c: exists.")
Else
      Response.Write("Drive c: does not exist.")
End If

Response.write("<br>")

if fs.driveexists("g:") = true then
      Response.Write("Drive g: exists.")
Else
      Response.Write("Drive g: does not exist.")
End If

set fs=nothing
%>

</body>
</html>

取得某个指定驱动器的名称
本例演示如何获取某个指定的驱动器的名称。

<!DOCTYPE html>
<html>
<body>

<%
Set fs=Server.CreateObject("Scripting.FileSystemObject")
p=fs.GetDriveName("c:\winnt\cursors\3dgarro.cur")

Response.Write("The drive name is: " & p)

set fs=nothing
%>

</body>
</html>

取得某个指定路径的父文件夹的名称
本例演示如何获取某个指定的路径的父文件夹的名称。

<!DOCTYPE html>
<html>
<body>

<%
Set fs=Server.CreateObject("Scripting.FileSystemObject")
p=fs.GetParentFolderName("c:\winnt\cursors\3dgarro.cur")

Response.Write("The parent folder name of c:\winnt\cursors\3dgarro.cur is: " & p)

set fs=nothing
%>

</body>
</html>

取得文件名
本例演示如何获取指定的路径中的最后一个成分的文件名。

<!DOCTYPE html>
<html>
<body>

<%
Set fs=Server.CreateObject("Scripting.FileSystemObject")

Response.Write("The file name of the last component is: ")
Response.Write(fs.GetFileName("c:\winnt\cursors\3dgarro.cur"))
set fs=nothing
%>


</body>
</html>

取得文件扩展名
本例演示如何获取指定的路径中的最后一个成分的文件扩展名。

<!DOCTYPE html>
<html>
<body>

<%
Set fs=Server.CreateObject("Scripting.FileSystemObject")

Response.Write("The file extension of the file 3dgarro is: ")
Response.Write(fs.GetExtensionName("c:\winnt\cursors\3dgarro.cur"))

set fs=nothing
%>

</body>
</html>

取得文件或文件夹的基名称
本例演示如何获取指定的路径中文件或者文件夹的基名称。

<!DOCTYPE html>
<html>
<body>

<%
Set fs=Server.CreateObject("Scripting.FileSystemObject")

Response.Write(fs.GetBaseName("c:\winnt\cursors\3dgarro.cur"))
Response.Write("<br>")
Response.Write(fs.GetBaseName("c:\winnt\cursors\"))
Response.Write("<br>")
Response.Write(fs.GetBaseName("c:\winnt\"))

set fs=nothing
%>

</body>
</html>

TextStream 对象

读取文本文件
本例演示如何从文本文件中读取内容。

<!DOCTYPE html>
<html>
<body>
<p>This is the text in the text file:</p>
<%
Set fs=Server.CreateObject("Scripting.FileSystemObject")

Set f=fs.OpenTextFile(Server.MapPath("testread.txt"), 1)
Response.Write(f.ReadAll)
f.Close

Set f=Nothing
Set fs=Nothing
%>
</body>
</html>

读取文本文件中的一个部分
本例演示如何仅仅读取一个文本流文件的部分内容。

<!DOCTYPE html>
<html>
<body>
<p>This is the first five characters from the text file:</p>

<%
Set fs=Server.CreateObject("Scripting.FileSystemObject")

Set f=fs.OpenTextFile(Server.MapPath("testread.txt"), 1)
Response.Write(f.Read(5))
f.Close

Set f=Nothing
Set fs=Nothing
%>

</body>
</html>

读取文本文件中的一行
本例演示如何从一个文本流文件中读取一行内容。

<!DOCTYPE html>
<html>
<body>
<p>This is the first line of the text file:</p>

<%
Set fs=Server.CreateObject("Scripting.FileSystemObject")

Set f=fs.OpenTextFile(Server.MapPath("testread.txt"), 1)
Response.Write(f.ReadLine)
f.Close

Set f=Nothing
Set fs=Nothing
%>

</body>
</html>

读取文本文件的所有行
本例演示如何从文本流文件中读取所有的行。

<!DOCTYPE html>
<html>
<body>
<p>This is all the lines in the text file:</p>

<%
Set fs=Server.CreateObject("Scripting.FileSystemObject")
Set f=fs.OpenTextFile(Server.MapPath("testread.txt"), 1)

do while f.AtEndOfStream = false
Response.Write(f.ReadLine)
Response.Write("<br>")
loop

f.Close
Set f=Nothing
Set fs=Nothing
%>

</body>
</html>

略过文本文件中的一部分
本例演示如何在读取文本流文件时跳过指定的字符数。

<!DOCTYPE html>
<html>
<body>
<p>The first four characters in the text file are skipped:</p>

<%
Set fs=Server.CreateObject("Scripting.FileSystemObject")

Set f=fs.OpenTextFile(Server.MapPath("testread.txt"), 1)
f.Skip(4)
Response.Write(f.ReadAll)
f.Close

Set f=Nothing
Set fs=Nothing
%>

</body>
</html>

略过文本文件中的一行
本例演示如何在读取文本流文件时跳过一行。

<!DOCTYPE html>
<html>
<body>
<p>The first line in the text file is skipped:</p>

<%
Set fs=Server.CreateObject("Scripting.FileSystemObject")

Set f=fs.OpenTextFile(Server.MapPath("testread.txt"), 1)
f.SkipLine
Response.Write(f.ReadAll)
f.Close

Set f=Nothing
Set fs=Nothing
%>

</body>
</html>

返回行数
本例演示如何返回在文本流文件中的当前行号。

<!DOCTYPE html>
<html>
<body>
<p>This is all the lines in the text file (with line numbers):</p>

<%
Set fs=Server.CreateObject("Scripting.FileSystemObject")
Set f=fs.OpenTextFile(Server.MapPath("testread.txt"), 1)

do while f.AtEndOfStream = false
Response.Write("Line:" & f.Line & " ")
Response.Write(f.ReadLine)
Response.Write("<br>")
loop

f.Close
Set f=Nothing
Set fs=Nothing
%>

</body>
</html>

取得列数
本例演示如何取得在文件中当前字符的列号。

<!DOCTYPE html>
<html>
<body>

<%
Set fs=Server.CreateObject("Scripting.FileSystemObject")

Set f=fs.OpenTextFile(Server.MapPath("testread.txt"), 1)
Response.Write(f.Read(2))
Response.Write("<p>The cursor is now standing in position " & f.Column & " in the text file.</p>")
f.Close

Set f=Nothing
Set fs=Nothing
%>

</body>
</html>

Drive 对象

取得指定驱动器的总容量
本例演示如何使用 TotalSize 属性来获得指定驱动器的总容量。

<!DOCTYPE html>
<html>
<body>

<%
Dim fs,d,n
Set fs=Server.CreateObject("Scripting.FileSystemObject")
Set d=fs.GetDrive("c:")
n = "Drive: " & d
n = n & "<br>Total size in bytes: " & d.TotalSize
Response.Write(n)
set d=nothing
set fs=nothing
%>

</body>
</html>

取得指定驱动器的可用空间数
本例演示如何首先创建一个 FileSystemObject 对象,然后使用 AvailableSpace 属性来获得指定驱动器的可用空间。

<!DOCTYPE html>
<html>
<body>

<%
Dim fs, d, n
Set fs=Server.CreateObject("Scripting.FileSystemObject")
Set d=fs.GetDrive("c:")
n = "Drive: " & d
n = n & "<br>Available Space in bytes: " & d.AvailableSpace
Response.Write(n)
set d=nothing
set fs=nothing
%>

</body>
</html>

取得指定驱动器的剩余空间容量
本例演示如何使用 FreeSpace 空间属性来取得指定驱动器的剩余空间。

<!DOCTYPE html>
<html>
<body>

<%
Dim fs, d, n
Set fs=Server.CreateObject("Scripting.FileSystemObject")
Set d=fs.GetDrive("c:")
n = "Drive: " & d
n = n & "<br>Free Space in bytes: " & d.FreeSpace
Response.Write(n)
set d=nothing
set fs=nothing
%>

</body>
</html>

取得指定驱动器的驱动器字母
本例演示如何使用 DriveLetter 属性来获得指定驱动器的驱动器字母。

<!DOCTYPE html>
<html>
<body>

<%
dim fs, d, n
set fs=Server.CreateObject("Scripting.FileSystemObject")
set d=fs.GetDrive("c:")
Response.Write("The drive letter is: " & d.driveletter)
set d=nothing
set fs=nothing
%>

</body>
</html>

取得指定驱动器的驱动器类型
本例演示如何使用 DriveType 属性来获得指定驱动器的驱动器类型。

<!DOCTYPE html>
<html>
<body>

<%
dim fs, d, n
set fs=Server.CreateObject("Scripting.FileSystemObject")
set d=fs.GetDrive("c:")
Response.Write("The drive type is: " & d.DriveType)
set d=nothing
set fs=nothing
%>

</body>
</html>

取得指定驱动器的文件系统信息
本例演示如何使用 FileSystem 来取得指定驱动器的文件系统信息。

<!DOCTYPE html>
<html>
<body>

<%
dim fs, d, n
set fs=Server.CreateObject("Scripting.FileSystemObject")
set d=fs.GetDrive("c:")
Response.Write("The file system is: " & d.FileSystem)
set d=nothing
set fs=nothing
%>

</body>
</html>

驱动器是否已就绪?
本例演示如何使用 IsReady 属性来检查指定的驱动器是否已就绪。

<!DOCTYPE html>
<html>
<body>

<%
dim fs,d,n
set fs=Server.CreateObject("Scripting.FileSystemObject")
set d=fs.GetDrive("c:")
n = "The " & d.DriveLetter
if d.IsReady=true then 
    n = n & " drive is ready."
else
    n = n & " drive is not ready."
end if 
Response.Write(n)
set d=nothing
set fs=nothing
%>

</body>
</html>

取得指定驱动器的路径
本例演示如何使用 Path 属性来取得指定驱动器的路径。

<!DOCTYPE html>
<html>
<body>

<%
dim fs,d
set fs=Server.CreateObject("Scripting.FileSystemObject")
set d=fs.GetDrive("c:")
Response.Write("The path is " & d.Path)
set d=nothing
set fs=nothing
%>

</body>
</html>

取得指定驱动器的根文件夹
本例演示如何使用 RootFolder 属性来取得指定驱动器的根文件夹。

<!DOCTYPE html>
<html>
<body>

<%
dim fs,d
set fs=Server.CreateObject("Scripting.FileSystemObject")
set d=fs.GetDrive("c:")
Response.Write("The rootfolder is " & d.RootFolder)
set d=nothing
set fs=nothing
%>

</body>
</html>

取得指定驱动器的序列号
本例演示如何使用 Serialnumber 属性来取得指定驱动器的序列号。

<!DOCTYPE html>
<html>
<body>

<%
dim fs,d
set fs=Server.CreateObject("Scripting.FileSystemObject")
set d=fs.GetDrive("c:")
Response.Write("The serialnumber is " & d.SerialNumber)
set d=nothing
set fs=nothing
%>

</body>
</html>

File 对象

文件最后被修改的时间?
本例演示如何使用 DateLastModified 属性来取得指定文件最后被修改的日期和时间。

<!DOCTYPE html>
<html>
<body>

<%
dim fs, f
set fs=Server.CreateObject("Scripting.FileSystemObject")
set f=fs.GetFile(Server.MapPath("testread.txt"))
Response.Write("The file testread.txt was last modified on: " & f.DateLastModified)
set f=nothing
set fs=nothing
%>

</body>
</html>

文件最后被访问的时间?
此例演示如何使用 DateLastAccessed 属性来取得指定文件最后被访问的日期和时间。

<!DOCTYPE html>
<html>
<body>

<%
dim fs, f
set fs=Server.CreateObject("Scripting.FileSystemObject")
set f=fs.GetFile(Server.MapPath("testread.txt"))
Response.Write("The file testread.txt was last accessed on: " & f.DateLastAccessed)
set f=nothing
set fs=nothing
%>

</body>
</html>

返回指定文件的属性
本例演示如何使用 Attributes 来返回指定文件的属性。

<!DOCTYPE html>
<html>
<body>

<%
dim fs,f
set fs=Server.CreateObject("Scripting.FileSystemObject")
set f=fs.GetFile(Server.MapPath("testread.txt"))
Response.Write("The attributes of the file testread.txt are: " & f.Attributes)
set f=nothing
set fs=nothing
%>

</body>
</html>

Dictionary 对象

指定的键存在吗?
本例演示如何创建一个 Dictionary 对象,然后使用 Exists 方法来检查指定的键是否存在。

<!DOCTYPE html>
<html>
<body>

<%
dim d
set d=Server.CreateObject("Scripting.Dictionary")
d.Add "n", "Norway"
d.Add "i", "Italy"
if d.Exists("n")= true then
    Response.Write("Key exists.")
else
    Response.Write("Key does not exist.")
end if
set d=nothing
%>

</body>
</html>

返回一个所有项目的数组
本例演示如何使用 Items 方法来返回一个所有项目的数组。

<!DOCTYPE html>
<html>
<body>

<%
dim d,a,i,s
set d=Server.CreateObject("Scripting.Dictionary")
d.Add "n", "Norway"
d.Add "i", "Italy"

Response.Write("<p>The values of the items are:</p>")
a=d.Items
for i = 0 To d.Count -1
    s = s & a(i) & "<br>"
next
Response.Write(s)

set d=nothing
%>

</body>
</html>

返回一个所有键的数组
本例演示如何使用 Keys 方法来返回一个所有键的数组。

<!DOCTYPE html>
<html>
<body>

<%
dim d,a,i,s
set d=Server.CreateObject("Scripting.Dictionary")
d.Add "n", "Norway"
d.Add "i", "Italy"
Response.Write("<p>The value of the keys are:</p>")
a=d.Keys
for i = 0 To d.Count -1
    s = s & a(i) & "<br>"
next
Response.Write(s)
set d=nothing
%>

</body>
</html>

返回一个项目的值
本例演示如何使用 Item 属性来返回一个项目的值。

<!DOCTYPE html>
<html>
<body>

<%
dim d
set d=Server.CreateObject("Scripting.Dictionary")
d.Add "n", "Norway"
d.Add "i", "Italy"
Response.Write("The value of the item n is: " & d.item("n"))
set d=nothing
%>

</body>
</html>

设置一个键
本例演示如何使用 Key 属性来在 Dictionary 对象中设置一个键。

<!DOCTYPE html>
<html>
<body>

<%
dim d
set d=Server.CreateObject("Scripting.Dictionary")
d.Add "n", "Norway"
d.Add "i", "Italy"
d.Key("i") = "it"
Response.Write("The key i has been set to it, and the value is: " & d.Item("it"))
set d=nothing
%>

</body>
</html>

返回键/项目对的数量
本例演示如何使用 Count 属性来返回键/项目对的数量。

<!DOCTYPE html>
<html>
<body>

<%
dim d, a, s, i
set d=Server.CreateObject("Scripting.Dictionary")
d.Add "n", "Norway"
d.Add "i", "Italy"
Response.Write("The number of key/item pairs is: " & d.Count)
set d=nothing
%>

</body>
</html>