代码之家  ›  专栏  ›  技术社区  ›  Brian Boatright

使用.Net Streamreader读取HTM文件时可能出现编码问题

  •  1
  • Brian Boatright  · 技术社区  · 16 年前

    我有一个HTML文件,文本中有(版权)和(商标)符号。这只是许多其他符号中的两个。当我将html文件读入文本控件时,它会将符号转换为其他内容。

    版权符号转换为(ff中的打开框) 商标符号转换为(如预期)

    If (System.IO.File.Exists(FullName)) Then
       Dim StreamReader1 As New System.IO.StreamReader(FullName)
       Contents.Text = StreamReader1.ReadToEnd()
       StreamReader1.Close()
    End If
    

    内容是 <asp:Literal runat="server" ID="Contents"></asp:Literal> 它是aspx页面中唯一的控件。

    根据一些研究,我认为这与编码有关,但我不知道为什么它会改变如何修复它。

    html文件在头段中不包含任何内容类型设置。

    1 回复  |  直到 15 年前
        1
  •  0
  •   ChrisN    16 年前

    如果可以将此处理转移到Render方法,则可以使用HttpResponse.WriteFile以查看它是否比文本控件处理这些字符更好。如果你对这个文件的内容什么都不做,除了把它分配给控件然后让它呈现,那么你应该可以这样做了。