• 软件测试技术
  • 软件测试博客
  • 软件测试视频
  • 开源软件测试技术
  • 软件测试论坛
  • 软件测试沙龙
  • 软件测试资料下载
  • 软件测试杂志
  • 软件测试人才招聘
    暂时没有公告

字号: 小 中 大 | 推荐给好友 上一篇 | 下一篇

加亮显示ASP文章原代码

发布: 2007-6-30 18:56 | 作者: admin | 来源: | 查看: 16次 | 进入软件测试论坛讨论

领测软件测试网 <%@ LANGUAGE="VBSCRIPT" %>
<% Option Explicit %>
<%
@#File: CodeBrws.asp
@#Overview: This formats and writes the text of the selected page for
@# the View Script Button
@#This file is provided as part of the Microsoft Visual Studio 6.0 Samples

@#THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT
@#WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED,
@#INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES
@#OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR
@#PURPOSE.

@#Copyright (C) 1997, 1998 Microsoft Corporation, All rights reserved
%>
<html>

<head>
<meta NAME="DESCRIPTION" CONTENT="ASP Source code browser">
<meta NAME="GENERATOR" CONTENT="Microsoft FrontPage 3.0">
<meta HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso8859-1">
<title></title>
</head>

<body BGCOLOR="#FFFFFF" TOPMARGIN="0" LEFTMARGIN="0" ALINK="#23238E" VLINK="#808080"
LINK="#FFCC00">
<basefont FACE="VERDANA, ARIAL, HELVETICA" SIZE="2"><!--- DISPLAY THE COLOR LEGEND --->


<table BORDER="1">
<tr>
<td WIDTH="25" BGCOLOR="#FF0000">&nbsp;&nbsp; </td>
<td><font FACE="VERDANA, ARIAL, HELVETICA" SIZE="2">ASP Script</font> </td>
</tr>
<tr>
<td BGCOLOR="#0000FF">&nbsp;&nbsp; </td>
<td><font FACE="VERDANA, ARIAL, HELVETICA" SIZE="2">Comments</font> </td>
</tr>
<tr>
<td BGCOLOR="#000000">&nbsp;&nbsp; </td>
<td><font FACE="VERDANA, ARIAL, HELVETICA" SIZE="2">HTML and Text</font> </td>
</tr>
</table>

<hr>
<font FACE="VERDANA, ARIAL, HELVETICA" SIZE="2"><% OutputSource %>
</font>
</body>
</html>
<%
Sub OutputSource
Dim strVirtualPath, strFilename
strVirtualPath = Request("Source")
strFilename = Server.MapPath(strVirtualPath)

Dim FileObject, oInStream, strOutput
@#Creates a file object to hold the text of the selected page
Set FileObject = CreateObject("Scripting.FileSystemObject")
Set oInStream = FileObject.OpenTextFile(strFilename, 1, 0, 0)
@#Loop that writes each line of text in the file according to
@#the PrintLine function below
While NOT oInStream.AtEndOfStream
strOutput = oInStream.ReadLine
Call PrintLine(strOutput, fCheckLine(strOutput))
Response.Write "<BR>"
Wend
End Sub

@# Returns the minimum number greater than 0
@# If both are 0, returns -1
Function fMin(iNum1, iNum2)
If iNum1 = 0 AND iNum2 = 0 Then
fMin = -1
ElseIf iNum2 = 0 Then
fMin = iNum1
ElseIf iNum1 = 0 Then
fMin = iNum2
ElseIf iNum1 < iNum2 Then
fMin = iNum1
Else
fMin = iNum2
End If
End Function

Function fCheckLine (ByVal strLine)
Dim iTemp, iPos
fCheckLine = 0
iTemp = 0

iPos = InStr(strLine, "<" & "%")
If fMin(iTemp, iPos) = iPos Then
iTemp = iPos
fCheckLine = 1
End If

iPos = InStr(strLine, "%" & ">")
If fMin(iTemp, iPos) = iPos Then
iTemp = iPos
fCheckLine = 2
End If

iPos = InStr(1, strLine, "<" & "SCRIPT", 1)
If fMin(iTemp, iPos) = iPos Then
iTemp = iPos
fCheckLine = 3
End If

iPos = InStr(1, strLine, "<" & "/SCRIPT", 1)
If fMin(iTemp, iPos) = iPos Then
iTemp = iPos
fCheckLine = 4
End If

iPos = InStr(1, strLine, "<" & "!--", 1)
If fMin(iTemp, iPos) = iPos Then
iTemp = iPos
fCheckLine = 5
End If

iPos = InStr(1, strLine, "-" & "->", 1)
If fMin(iTemp, iPos) = iPos Then
iTemp = iPos
fCheckLine = 6
End If

End Function

Sub PrintHTML (ByVal strLine)
Dim iPos, iSpaces, i
iSpaces = Len(strLine) - Len(LTrim(strLine))
i = 1
@#Correct for tabs
While Mid(Strline, i, 1) = Chr(9)
iSpaces = iSpaces + 5
i = i + 1
Wend
@#Insert spaces
If iSpaces > 0 Then
For i = 1 to iSpaces
Response.Write("&nbsp;")
Next
End If
iPos = InStr(strLine, "<")
If iPos Then
Response.Write(Left(strLine, iPos - 1))
Response.Write("&lt;")
strLine = Right(strLine, Len(strLine) - iPos)
Call PrintHTML(strLine)
Else
Response.Write(strLine)
End If
End Sub

Sub PrintLine (ByVal strLine, iFlag)
Dim iPos
Select Case iFlag
Case 0
Call PrintHTML(strLine)

Case 1
iPos = InStr(strLine, "<" & "%")
Call PrintHTML(Left(strLine, iPos - 1))
Response.Write("<FONT COLOR=#ff0000>")
Response.Write("&lt;%")
strLine = Right(strLine, Len(strLine) - (iPos + 1))
Call PrintLine(strLine, fCheckLine(strLine))

Case 2
iPos = InStr(strLine, "%" & ">")
Call PrintHTML(Left(strLine, iPos -1))
Response.Write("%&gt;")
Response.Write("</FONT>")
strLine = Right(strLine, Len(strLine) - (iPos + 1))
Call PrintLine(strLine, fCheckLine(strLine))

Case 3
iPos = InStr(1, strLine, "<" & "SCRIPT", 1)
Call PrintHTML(Left(strLine, iPos - 1))
Response.Write("<FONT COLOR=#0000ff>")
Response.Write("&lt;SCRIPT")
strLine = Right(strLine, Len(strLine) - (iPos + 6))
Call PrintLine(strLine, fCheckLine(strLine))

Case 4
iPos = InStr(1, strLine, "<" & "/SCRIPT>", 1)
Call PrintHTML(Left(strLine, iPos - 1))
Response.Write("&lt;/SCRIPT&gt;")
Response.Write("</FONT>")
strLine = Right(strLine, Len(strLine) - (iPos + 8))
Call PrintLine(strLine, fCheckLine(strLine))

Case 5
iPos = InStr(1, strLine, "<" & "!--", 1)
Call PrintHTML(Left(strLine, iPos - 1))
Response.Write("<FONT COLOR=#0000ff>")
Response.Write("&lt;!--")
strLine = Right(strLine, Len(strLine) - (iPos + 3))
Call PrintLine(strLine, fCheckLine(strLine))

Case 6
iPos = InStr(1, strLine, "-" & "->", 1)
Call PrintHTML(Left(strLine, iPos - 1))
Response.Write("--&gt;")
Response.Write("</FONT>")
strLine = Right(strLine, Len(strLine) - (iPos + 2))
Call PrintLine(strLine, fCheckLine(strLine))

Case Else
Response.Write("Function Error -- Please contact the administrator.")
End Select
End Sub
%>

延伸阅读

文章来源于领测软件测试网 https://www.ltesting.net/


关于领测软件测试网 | 领测软件测试网合作伙伴 | 广告服务 | 投稿指南 | 联系我们 | 网站地图 | 友情链接
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备10010545号-5
技术支持和业务联系:[email protected] 电话:010-51297073

软件测试 | 领测国际 | ISTQB | ISTQB官网 | TMMi | TMMi认证 | 国际软件测试工程师认证 | 领测软件测试网