มีระบบข่าวสารมากมายที่สร้าง html แต่ทั้งหมดใช้เทมเพลต ฟังก์ชันนี้จะบันทึกโค้ด html ที่สร้างโดยเพจ asp ลงในไฟล์ html ด้วยวิธีนี้ ไม่จำเป็นต้องเปลี่ยนหน้าต้นฉบับและคุณสามารถกรอก a ได้อย่างง่ายดาย การสร้างข่าวสารของระบบ html ^_^เนื่องจากโค้ดค่อนข้างสั้น ผมจะไม่แสดงความคิดเห็นที่นี่
คัดลอกรหัสรหัสดังต่อไปนี้:
-
'เกิดปัญหากับโปรแกรมนี้เมื่อ response.End() มีอยู่ในไฟล์รวมของหน้าเป้าหมาย ซึ่งก็คือหน้า #include
'หมายเหตุ: ไฟล์นี้จะต้องอยู่ในไดเรกทอรีเดียวกันกับไฟล์ที่ชี้ไปโดย 20041227111723.htm
สลัว Hughchiu_rtcode
ฟังก์ชัน get_exe_code(20041227111723.htm)
execode สลัว
สลัว tmp_str
หรี่ใหม่, re1, เนื้อหา, fso, f, aspStart, aspEnd
คุณสลัว ม
รันโค้ด=
ตั้งค่า fso = CreateObject (Scripting.FileSystemObject)
ตั้งค่า f=fso.OpenTextFile(server.mappath(20041227111723.htm))
เนื้อหา=f.อ่านทั้งหมด
ฉ.ปิด
ตั้งค่า f=ไม่มีอะไร
ตั้งค่า fso=nothing
set re = regexp ใหม่
re.ignorecase = จริง
re.global = จริง
รูปแบบใหม่ = /</%/@[^/%]+/%/>
เนื้อหา = re.replace (เนื้อหา)
re.global = เท็จ
รูปแบบใหม่ = /</!/-/-/s*/#include/s*file/s*=/s*/([^/]+)//s*/-/-/>
ทำ
set ms = re.execute (เนื้อหา)
ถ้า ms.count<>0 แล้ว
กำหนดให้ ม. = มิลลิวินาที(0)
tmp_str = get_exe_code(m.submatches(0))
เนื้อหา = re.replace (เนื้อหา tmp_str)
อื่น
ออกทำ
สิ้นสุดถ้า
วนซ้ำ
เซต m = ไม่มีอะไร
ตั้งค่า ms = ไม่มีเลย
re.รูปแบบ=^/s*=
aspEnd=1
aspStart=inStr(aspEnd,เนื้อหา,<%)+2
ตั้งค่า re1=RegExp ใหม่
re1.ignorecase = จริง
re1.global = เท็จ
re1.pattern = การตอบสนอง/.เขียน(.+)
ทำในขณะที่ aspStart>aspEnd+1
execode = execode&vbcrlf& Hughchiu_rtcode = Hughchiu_rtcode&&แทนที่( แทนที่(กลาง (เนื้อหา,aspEnd,aspStart-aspEnd-2),,), vbcrlf, &vbcrlf&)&&vbcrlf
aspEnd=inStr(aspStart,เนื้อหา,%/>)+2
tmp_str = กลาง (เนื้อหา, aspStart, aspEnd-aspStart-2)
ทำ
ตั้งค่า ms = re1.execute (tmp_str)
ถ้า ms.count<>0 แล้ว
กำหนดให้ ม. = มิลลิวินาที(0)
tmp_str = re1.replace(tmp_str, Hughchiu_rtcode = Hughchiu_rtcode&&m.submatches(0))
อื่น
ออกทำ
สิ้นสุดถ้า
วนซ้ำ
เซต m = ไม่มีอะไร
ตั้งค่า ms = ไม่มีเลย
execode = execode& แทนที่ (tmp_str,hughchiu_rtcode = Hughchiu_rtcode&)
aspStart=inStr(aspEnd,เนื้อหา,<%)+2
วนซ้ำ
ตั้ง re1 = ไม่มีเลย
ตั้งค่าใหม่ = ไม่มีอะไร
execode = execode&vbcrlf& Hughchiu_rtcode = Hughchiu_rtcode&&replace( แทนที่(Mid(เนื้อหา,aspEnd), , ), vbcrlf, &vbcrlf& )&&vbcrlf
get_exe_code = <%&execode&%/>
สิ้นสุดฟังก์ชัน
ฟังก์ชั่น asp2html (20041227111723.htm)
รหัสสลัว
รหัส = แทนที่( แทนที่( แทนที่( get_exe_code(20041227111723.htm), Hughchiu_rtcode = Hughchiu_rtcode&&vbcrlf, ), <%, ), %/>, )
'response.Write (รหัส)
ดำเนินการ (รหัส)
'response.Write (hughchiu_rtcode)
asp2html = Hughchiu_rtcode
ฟังก์ชั่นสิ้นสุด
-
ตัวอย่างการใช้งาน:
คัดลอกรหัสรหัสดังต่อไปนี้:
ตั้งค่า fso = CreateObject (Scripting.FileSystemObject)
ตั้งค่า f=fso.CreateTextFile( server.mappath( youpage.htm ), true )
ฉ.WriteLine( asp2html(youpage.asp) )
ฉ.ปิด
เซต f = ไม่มีอะไร
ตั้งค่า fso = ไม่มีเลย