Dim htmltext As StringBuilder = New StringBuilder
        Try
             Dim sr As StreamReader = New StreamReader("writehtm.htm") '模板页面
            Try
                Dim line As String
                While Not IsNothing(line = sr.ReadLine)
                    htmltext.Append(line)
                End While
                sr.Close()
            Finally
                CType(sr, IDisposable).Dispose()
            End Try
        Catch
            Response.Write("<Script>alert('读取文件错误')</Script>")
        End Try什么原因?

解决方案 »

  1.   

    Dim sr As StreamReader = New StreamReader(Server.MapPath("writehtm.htm"))看看
      

  2.   

    回复人: tmfc() ( ) 信誉:100  2005-07-12 12:40:00  得分: 0  
     
     
       出错在什么地方?哪一行?
      
     
    javascript:读取文件错误'
      

  3.   

    回复人: net_lover(孟子E章) ( ) 信誉:120  2005-07-12 12:39:00  得分: 0  
     
     
       Dim sr As StreamReader = New StreamReader(Server.MapPath("writehtm.htm"))看看
      
     
    这样运行不会提示读取错误,但是程序一运行,aspnet_wp.exe占用资源很高,仅它的CPU占用率就达到78%以上,程序一直在运行中,导致其他本机的.net页面都无法访问。代码如下:        Dim htmltext As StringBuilder = New StringBuilder
            Try
                ' Using 
                'Dim code As Encoding = Encoding.GetEncoding("gb2312")
                Dim sr As StreamReader = New StreamReader(Server.MapPath("writehtm.htm")) '模板页面
                Try
                    Dim line As String
                    While Not IsNothing(line = sr.ReadLine)
                        htmltext.Append(line)
                    End While
                    sr.Close()
                Finally
                    CType(sr, IDisposable).Dispose()
                End Try
            Catch
                Response.Write("<Script>alert('读取文件错误')</Script>")
            End Try
            Response.Write("<Script>alert('读取成功')</Script>")
            Exit Function
      

  4.   

    While Not IsNothing(line = sr.ReadLine)
         htmltext.Append(line)
    End While应该是这里死循环了,建议调试一下跟踪进去察看错误原因。
      

  5.   

    死循环的话会抛出一个异常的吧,isnull和isnothing和isempty,还有len(str)=0,str="",str=string.empty,这里应该用哪个呀
      

  6.   

    Dim htmltext As StringBuilder = New StringBuilder
    Try
    Dim sr As StreamReader = New StreamReader(Server.MapPath("writehtm.htm"))
    Dim line As String
    Do
        line = sr.ReadLine()
        htmltext.Append(line)
    Loop Until line Is Nothing
    sr.Close()
    Catch E As Exception
     htmltext.Append(E.Message)
    End Try
      

  7.   

    改为:
    While ((line = sr.ReadLine) <> "")
         htmltext.Append(line)
    End While
    又弹出提示:Response.Write("<Script>alert('读取文件错误')</Script>")
      

  8.   

    这样可以了:回复人: net_lover(孟子E章) ( ) 信誉:120  2005-07-12 14:29:00  得分: 0  
     
     
       Dim htmltext As StringBuilder = New StringBuilder
    Try
    Dim sr As StreamReader = New StreamReader(Server.MapPath("writehtm.htm"))
    Dim line As String
    Do
        line = sr.ReadLine()
        htmltext.Append(line)
    Loop Until line Is Nothing
    sr.Close()
    Catch E As Exception
     htmltext.Append(E.Message)
    End Try