정해준 경로의 소스를 출력하는 함수를 간단하게 만들어보았습니다.
당연한 말이겠지만 같은 사이트 내의 소스만 출력이 됩니다.
Replace 부분에서 매번 strText 변수에 재할당하지 않고 한줄로 한번에 변환하는 것이 실행 효율이 조금 더 낫지만, 저렇게 Replace 항목이 많은 경우에는 여러줄로 나누어 보기 좋게 해주는 것이 수정을 편하게 하여 유지보수 생산성이 높아집니다.
<code> 태그는 코드를 화면에 출력할때 사용하는 <xmp> 태그와 유사한 동작을 합니다.
함수내에서 화면 출력에 필요한 작업을 이미 대부분 해놓은 상태이므로 코드 출력용 태그는 사실상 불필요합니다. 위의 경우는 단순히 보기 좋으라고 <code> 태그를 붙여놓은 것이므로 제거하셔도 무방합니다.
참고로 <code> 태그 위치에 <xmp> 태그를 대신 사용하면 사소한 문제가 하나 생기니 주의하시길 바랍니다.
============================================================================================================================
늦어지만 저도 답변달아 봅니다.
아래와 같이 보여지게 만들어 줍니다.
<%
Sub viewCode(codefile)
response.write "<p style=""background-color=#eeeeee;"">"
set fso = server.createobject("scripting.filesystemobject")
set f = fso.opentextfile(server.mappath(codefile),1)
allViewCode = viewHTML(f.readall)
set f = nothing
response.write codingcolor(allviewcode,"brown")
response.write "</p>"
End Sub
'Coding부분을 찾아서 Coloring함수로...
function CodingColor(strTemp,strFontColor)
Dim firstPos
Dim lastPos
Dim leftString
Dim midString
Dim rightString
Dim xmidString
firstPos =1
lastPos = 1
do until lastPos >= len(strTemp)
firstPos = instr(lastPos, strTemp, "<%")
if firstPos <= 0 then
exit do
end if
lastPos = instr(firstPos, strTemp, "%>")
if lastPos <= 0 then
lastPos = len(strTemp)
end if
lastPos = lastPos + len("%>") - 1
leftString = left(strTemp,firstPos-1)
midString = mid(strTemp,firstPos,lastPos-firstPos+1)
rightString = mid(strTemp,lastPos+1,len(strTemp)-lastPos)
xmidString = coloring(midString)
' strTemp = leftString & xmidString & rightString
' lastPos = firstPos + len(xmidString)-1
strTemp = leftString & "<span style=color:" & strFontColor & ";>" & xmidString & "</span>" & rightString
lastPos = firstPos + len("<span style=color:" & strFontColor & ";>" & xmidString & "</span>")-1
loop
CodingColor = strTemp
end function
function coloring(strViewCode)
Dim Reservedwords
Dim aryReservedword
Dim i
Dim strFunction
Dim aryFunction
Reservedwords="AndlCalllCaselConstlDimlDolEachlElselElseIflEmptylEndlEqvlEraselErrorlExitlExplicitlFalselForlFunctionlIflImplInlIslLooplModlNextlNotlNothinglNulllOnlOptionlOrlPrivatelPubliclRandomizelReDimlResumelSelectlSetlSteplSublThenlTolTruelUntillWendlWhilelXor"
aryReservedword=split(Reservedwords,"l")
for i = 0 to ubound(aryReservedword)
strViewCode = wordReplace(strViewCode,aryReservedword(i),"blue")
next
strFunction="AnchorlArraylAsclAtnlCBoollCBytelCCurlCDatelCDbllChrlCIntlCLnglCoslCreateObjectlCSnglCStrlDatelDateAddlDateDifflDatePartlDateSeriallDateValuelDaylDictionarylDocumentlElementlErrlExplFileSystemObjectlFilterlFixlIntlFormlFormatCurrencylFormatDateTimelFormatNumberlFormatPercentlGetObjectlHexlHistorylHourlInputBoxlInStrlInstrRevlIsArraylIsDatelIsEmptylIsNulllIsNumericlIsObjectlJoinlLBoundlLCaselLeftlLenlLinklLoadPicturelLocationlLoglLTrimlRTrimlTrimlMidlMinutelMonthlMonthNamelMsgBoxlNavigatorlNowlOctlReplacelRightlRndlRoundlScriptEnginelScriptEngineBuildVersionlScriptEngineMajorVersionlScriptEngineMinorVersionlSecondlSgnlSinlSpacelSplitlSqrlStrComplStringlStrReverselTanlTimelTextStreamlTimeSeriallTimeValuelTypeNamelUBoundlUCaselVarTypelWeekdaylWeekDayNamelWindowlYear"
aryFunction=split(strFunction,"l")
for i = 0 to
번호 | 제목 | 닉네임 | 조회수 | 작성일 | |
---|---|---|---|---|---|
35 | windows server 2008 에서의 iis7에서 asp 작동시.. [1] | Skynote | 3055 | 2011.06.27 | |
34 | Microsoft® SQL Server® 2008 Express .. | 최백호 | 2558 | 2011.11.25 | |
33 | jquery를 이용한 오른쪽 퀵메뉴 | 최백호 | 2787 | 2011.11.25 | |
32 | GeoIP 국가별 IP 체크 방법 | 최백호 | 2786 | 2011.11.25 | |
ASP 소스 보기 | 최백호 | 2880 | 2011.11.25 | ||
30 | 실시간 검색어 순위 순서대로 보여주기 | 최백호 | 2924 | 2011.11.25 | |
29 | Jquery 체크박스 사용법 | 최백호 | 2534 | 2011.11.25 | |
28 | ABC Upload 의 라이센스문제 | 최백호 | 3262 | 2011.12.09 | |
27 | TABS Upload 4.3 x86 - 4.0 x86 버전 입니다. .. | 최백호 | 3956 | 2011.12.20 | |
26 | 마이페이지 [2] | 일천 | 2433 | 2012.05.24 | |
25 | 아티보드 3.0 팝업 띠우기 | 일천 | 2745 | 2012.06.20 | |
24 | 아티보드 3.0 SSL로그인 | 일천 | 2510 | 2013.04.12 | |
23 | 게시판 글쓰기에 컬럼을 추가하고 싶습니다. [1] | 이성제 | 2270 | 2014.06.17 | |
22 | 스크립트가 먹히질 않습니다. | 이성제 | 2109 | 2014.07.06 | |
21 | 댓글과 관련하여 문의 드립니다. | mizy | 1495 | 2014.07.29 | |
20 | "글등록" 버튼을 누르면 "내용을 입력해 주세요" 경고창이 뜹니다. [2] | 와이즈 | 2396 | 2014.08.07 | |
19 | 아티보드 설치중에 자꾸이런오류가뜹니다.. [2] | 가리벙 | 2390 | 2014.09.12 | |
18 | 게시판에 iframe 넣을순 없나요? [1] | 정미숙 | 2356 | 2014.10.19 | |
17 | 구매결제시 에러 나요 [1] | 딸기우유주까 | 2371 | 2014.10.20 | |
16 | 최신글이 아래쪽에 나타나게 하려면 어떻게 하나요? [1] | 정미숙 | 2242 | 2015.01.05 |
댓글 0