Поделиться через


HttpServerUtility.HtmlDecode Метод

Определение

Декодирует строку, которая была закодирована, чтобы исключить недопустимые html-символы.

Чтобы кодировать или декодировать значения за пределами веб-приложения, используйте класс WebUtility.

Перегрузки

HtmlDecode(String)

Декодирует строку в кодировке HTML и возвращает декодированную строку.

HtmlDecode(String, TextWriter)

Декодирует строку в кодировке HTML и отправляет полученные выходные данные в поток вывода TextWriter.

HtmlDecode(String)

Декодирует строку в кодировке HTML и возвращает декодированную строку.

public:
 System::String ^ HtmlDecode(System::String ^ s);
public string HtmlDecode (string s);
member this.HtmlDecode : string -> string
Public Function HtmlDecode (s As String) As String

Параметры

s
String

Html-строка для декодирования.

Возвращаемое значение

Декодированные тексты.

Примеры

В следующем примере содержится функция LoadDecodedFile, которая декодирует данные из файла и копирует его в одну строку.

<%@ PAGE LANGUAGE = "C#" %>
 <%@ IMPORT NAMESPACE = "System.IO" %>
 
 <html xmlns="http://www.w3.org/1999/xhtml">
 <script runat ="server">
 
    String LoadDecodedFile(String file)
       {
       String DecodedString = "";
       FileStream fs = new FileStream(file, FileMode.Open);
       StreamReader r = new StreamReader(fs);
 
       // Position the file pointer at the beginning of the file.
       r.BaseStream.Seek(0, SeekOrigin.Begin);
       
       // Read the entire file into a string and decode each chunk.  
       while (r.Peek() > -1)
          DecodedString += Server.HtmlDecode(r.ReadLine());
 
       r.Close();
       return DecodedString; 
       }
 
 </script>
 <head runat="server">
 <title>HttpServerUtility.HtmlDecode Example</title>
 </head>
 <body></body>
 </html>

<%@ PAGE LANGUAGE = "VB" %>
<%@ Import Namespace="System.IO" %>
 
<html xmlns="http://www.w3.org/1999/xhtml">
<script runat = "server">
 
   Function LoadDecodedFile(file As String) As String
      Dim DecodedString As String
      Dim fs As New FileStream(file, FileMode.Open)
      Dim r As New StreamReader(fs)
      ' Position the file pointer at the beginning of the file.
      r.BaseStream.Seek(0, SeekOrigin.Begin)
      ' Read the entire file into a string and decode each chunk.
      Do While r.Peek() > -1
         DecodedString = DecodedString & _
            Server.HtmlDecode(r.ReadLine())
      Loop
      r.Close()
      LoadDecodedFile = DecodedString
   End Function
 
</script>
<head runat="server">
    <title> HttpServerUtility.HtmlDecode Example</title>
</head>
<body></body>
</html>

Комментарии

Кодирование HTML гарантирует правильное отображение текста в браузере и не интерпретируется браузером как HTML. Например, если текстовая строка содержит меньше знака (<) или больше знака (>), браузер будет интерпретировать эти символы в виде открывающей или закрывающей скобки HTML-тега. Если символы закодированы в формате HTML, они преобразуются в строки &lt; и &gt;, что приводит к тому, что браузер отображает меньше знака и больше, чем знак правильно. HtmlDecode декодирует текст, передаваемый на сервер.

Этот метод является удобным способом доступа к методу HttpUtility.HtmlDecode во время выполнения из приложения ASP.NET. Внутри этого метода используется HttpUtility.HtmlDecode для декодирования строк.

В файле кода для веб-страницы ASP.NET доступ к экземпляру класса HttpServerUtility через свойство Server. В классе, который не находится в файле программной части, используйте HttpContext.Current.Server для доступа к экземпляру класса HttpServerUtility.

За пределами веб-приложения используйте класс WebUtility для кодирования или декодации значений.

Применяется к

HtmlDecode(String, TextWriter)

Декодирует строку в кодировке HTML и отправляет полученные выходные данные в поток вывода TextWriter.

public:
 void HtmlDecode(System::String ^ s, System::IO::TextWriter ^ output);
public void HtmlDecode (string s, System.IO.TextWriter output);
member this.HtmlDecode : string * System.IO.TextWriter -> unit
Public Sub HtmlDecode (s As String, output As TextWriter)

Параметры

s
String

Html-строка для декодирования.

output
TextWriter

Поток вывода TextWriter, содержащий декодированную строку.

Примеры

В следующем примере декодируется строка, закодированная HTML для передачи по протоколу HTTP. Он декодирует указанную строку с именем EncodedString, которая содержит текст "Это <тестовая строка>"." и копирует его в строку с именем DecodedString как "Это строка <тестовой строки>.".

String EncodedString = "This is a &ltTest String&gt.";
StringWriter writer = new StringWriter();
Server.HtmlDecode(EncodedString, writer);
String DecodedString = writer.ToString();

Dim EncodedString As String = "This is a &ltTest String&gt."
Dim writer As New StringWriter
Server.HtmlDecode(EncodedString, writer)
Dim DecodedString As String = writer.ToString()
   

Комментарии

Кодирование HTML гарантирует правильное отображение текста в браузере и не интерпретируется браузером как HTML. Например, если текстовая строка содержит меньше знака (<) или больше знака (>), браузер будет интерпретировать эти символы в виде открывающей или закрывающей скобки HTML-тега. Если символы закодированы в формате HTML, они преобразуются в строки &lt; и &gt;, что приводит к тому, что браузер отображает меньше знака и больше, чем знак правильно.

HtmlDecode декодирует текст, передаваемый на сервер.

HtmlDecode — удобный способ доступа к методу HttpUtility.HtmlDecode во время выполнения из приложения ASP.NET. Внутри HtmlDecode используется HttpUtility.HtmlDecode для декодирования строк.

Чтобы кодировать или декодировать значения за пределами веб-приложения, используйте класс WebUtility.

Применяется к