savetest.asp
上传用户:tiancihang
上传日期:2014-03-12
资源大小:21387k
文件大小:6k
源码类别:

.net编程

开发平台:

C#

  1. <%@Language="VBScript"%>
  2. <SCRIPT language="VBScript" runat="Server">
  3. Dim strReturnString,sFileName,sRelativePath
  4. '为了增强安全性,开发者可增加验证当前用户的功能,例如通过Session等
  5. '防止用户自己写客户端脚本向savedoc.asp提交非法文件
  6. Function SaveFile(sFilePath,sContent)
  7. On Error Resume Next
  8. Dim oStream
  9. '''''''''''''''  生成调试信息 '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
  10. Response.write("<div>&nbsp;3</ br></div>")                          ''
  11. Response.write("<div>Message : Begin Create ADODB.Stream ... </ br></div>")        ''
  12.                          ''
  13. '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
  14. Set oStream = Server.CreateObject("ADODB.Stream")
  15. '''''''''''''''  生成调试信息 '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
  16. If Err.number <> 0 Then                         ''
  17.    Response.write("<div>Message : Create ADODB.Stream error : " & Err & "</ br></div>")         '' 
  18. Else        ''
  19.      Response.write("<div>Message : Create ADODB.Stream  Success! </ br></div>" )        '' 
  20. End If                                                                                                 ''
  21.        ''
  22. '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
  23. oStream.Type = 1
  24. oStream.Open
  25. '''''''''''''''  生成调试信息 '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
  26. Response.write("<div>&nbsp;4</ br></div>")                         ''
  27. Response.write("<div>Message : Begin read sContent to  ADODB.Stream ...</ br></div> ")        ''
  28.        ''
  29. '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
  30. oStream.Write sContent
  31. '''''''''''''''  生成调试信息 '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
  32. If Err.number <> 0 Then                          ''
  33.    Response.write("<div>Message : read sContent to  ADODB.Stream error : " & Err & "</ br></div>")''  
  34. Else        ''
  35.      Response.write("<div>Message : read sContent to  ADODB.Stream  Success! </ br></div>" )        ''  
  36. End If                          ''
  37. Response.write("<div>&nbsp;5</ br></div>")                         ''
  38. Response.write("<div>Message : Begin save ADODB.Stream to file ... </div>")                            ''
  39.        ''
  40. '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
  41. oStream.SaveToFile sFilePath, 2
  42. '''''''''''''''  生成调试信息 '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
  43. If Err.number <> 0 Then                                                                ''
  44.    Response.write("<div>Message : save ADODB.Stream to file error : " & Err & "</ br></div>")     ''  
  45. Else                                                          ''
  46.      Response.write("<div>Message : save ADODB.Stream to file  Success!</ br></div>" )        ''     
  47. End If                                                               ''
  48. Response.write("<div>&nbsp;</ br></div>")                                                              ''
  49.        ''
  50. '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
  51. oStream.Close
  52. Set oStream = Nothing
  53. SaveFile = True
  54. If Err.number <> 0 Then
  55. SaveFile = False
  56. End If
  57. End Function
  58. Sub readAndSaveFile()
  59. On Error Resume Next
  60. Dim i
  61. Dim sFileContent
  62. Dim oXML
  63. '''''''''''''''  生成调试信息 ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
  64. Response.write("<div>Information : </ br></div>")                                                   ''
  65. Response.write("<div>&nbsp;1</ br></div>")                                                          ''
  66. Response.write("<div>Message : Begin Create Msxml2.DOMDocument ... </ br></div>")                   ''
  67. ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
  68. Set oXML = Server.CreateObject("Msxml2.DOMDocument")
  69. '''''''''''''''  生成调试信息 ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
  70. If Err.number <> 0 Then     ''
  71.    Response.write("<div>Message : Create Msxml2.DOMDocument error : " & Err & "</ br></div>")  '' 
  72. Else     ''
  73.      Response.write("<div>Message : Create Msxml2.DOMDocument  Success! </ br></div>" )      ''
  74. End If     ''
  75. Response.write("<div>&nbsp;2</ br></div>")     ''
  76. Response.write("<div>Message : Begin load Request ... </ br></div> ")     ''
  77.     ''
  78. ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
  79. oXML.async = false
  80. oXML.load Request
  81. sFileContent = oXml.documentElement.childNodes.item(0).nodeTypedValue
  82. 'FileName和RelativePath区分大小写
  83. sFileName    = oXml.documentElement.childNodes.item(0).Attributes.getNamedItem("FileName").Text
  84. sRelativePath= oXml.documentElement.childNodes.item(0).Attributes.getNamedItem("RelativePath").Text
  85. '''''''''''''''  生成调试信息 ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
  86. If Err.number <> 0 Then     ''
  87.    Response.write("<div>Message : Load Request error : " & Err & "</ br></div>")      '' 
  88. Else     ''
  89.      Response.write("<div>Message : Create Msxml2.DOMDocument  Success! </ br></div>" )          ''
  90. End If         ''
  91.     ''
  92. ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
  93. '得到文件扩展名
  94. Dim intP, strFileExName
  95. intP = InStrRev(sFileName, ".")
  96. strFileExName = Mid(sFileName, intP)
  97. '接受doc、ppt和xls类型文件。开发者可增加接受其他类型文件
  98. if strFileExName = ".doc" or strFileExName = ".xls" or strFileExName = ".ppt"  or strFileExName = ".wps" then
  99. SaveFile  server.mappath(".") & "" & sRelativePath & sFileName, sFileContent
  100. end if
  101. Set oXml = Nothing
  102. If Err.number <> 0 Then
  103. strReturnString = "-1"
  104. End If
  105. End Sub
  106. '执行文件
  107. readAndSaveFile
  108. If strReturnString = "-1" Then
  109.     Response.write("Save Error!")
  110. Else
  111.     Response.write("Save OK.")
  112. End If
  113. </SCRIPT>