用ADODB.Stream代替FSO读取文本文件

  • 发布于:2020-05-30
  • 186 人围观
昨天我问过这个问题,不过没人回答到点上,今天搞定了.贴出来给觉得有用的朋友,希望其他朋友不用走弯路.
  
  '文件内容读取.
  Function LoadFile(ByVal File)
   Dim objStream
   On Error Resume Next
   Set objStream = Server.CreateObject("ADODB.Stream")
   If Err.Number=-2147221005 Then
   Response.Write "<div align='center'>非常遗憾,您的主机不支持ADODB.Stream,不能使用本程序</div>"
   Err.Clear
   Response.End
   End If
   With objStream
   .Type = 2
   .Mode = 3
   .Open
   .LoadFromFile Server.MapPath(File)
   If Err.Number<>0 Then
   Response.Write "<div align='center'>文件<font color='#ff0000'>"&File&"</font>无法被打开,请检查是否存在!</font></div>"
   Err.Clear
   Response.End
   End If
   .Charset = "GB2312"
   .Position = 2
   LoadFile = .ReadText
   .Close
   End With
   Set objStream = Nothing
  End Function
  
  '存储内容到文件
  Sub SaveToFile(ByVal strBody,ByVal File)
   Dim objStream
   On Error Resume Next
   Set objStream = Server.CreateObject("ADODB.Stream")
   If Err.Number=-2147221005 Then
   Response.Write "<div align='center'>非常遗憾,您的主机不支持ADODB.Stream,不能使用本程序</div>"
   Err.Clear
   Response.End
   End If
   With objStream
   .Type = 2
   .Open
   .Charset = "GB2312"
   .Position = objStream.Size
   .WriteText = strBody
   .SaveToFile Server.MapPath(File),2
   .Close
   End With
   Set objStream = Nothing
  End Sub
万企互联
标签: