HttpServerUtility.HtmlEncode Метод

Определение

Кодирует строку, отображаемую в браузере.

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

Перегрузки

Имя Описание
HtmlEncode(String)

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

HtmlEncode(String, TextWriter)

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

HtmlEncode(String)

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

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

Параметры

s
String

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

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

Кодированный HTML-текст.

Примеры

В следующем примере показано, как кодировать html-код значение, которое потенциально кодирует небезопасный код. Код находится в файле программной части веб-страницы. Значение для кодирования жестко закодировано в этом примере только для упрощения примера и отображения типа значения, которое можно закодировать в ФОРМАТЕ HTML. Как правило, html-кодирует значение, полученное от пользователя или запроса. Result ссылается на Literal элемент управления.

public partial class _Default : Page
{        
    protected void Page_Load(object sender, EventArgs e)
    {
        Result.Text = Server.HtmlEncode("<script>unsafe</script>");      
    } 
}
Public Class _Default
    Inherits Page

    Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs) Handles Me.Load
        Result.Text = Server.HtmlEncode("<script>unsafe</script>")
    End Sub
End Class

Следующий пример аналогичен предыдущему примеру, за исключением того, как кодировать значение HTML из класса, который не находится в файле кода программной части.

public class SampleClass
{
    public string GetEncodedText()
    {
        return HttpContext.Current.Server.HtmlEncode("<script>unsafe</script>");
    }
}
Public Class SampleClass
    Public Function GetEncodedText() As String
        Return HttpContext.Current.Server.HtmlEncode("<script>unsafe</script>")
    End Function
End Class

Комментарии

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

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

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

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

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

HtmlEncode(String, TextWriter)

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

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

Параметры

s
String

Строка для кодирования.

output
TextWriter

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

Примеры

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

String TestString = "This is a <Test String>.";
StringWriter writer = new StringWriter();
Server.HtmlEncode(TestString, writer);
String EncodedString = writer.ToString();

Dim TestString As String = "This is a <Test String>."
Dim writer As New StringWriter
Server.HtmlEncode(TestString, writer)
Dim EncodedString As String = writer.ToString()
   

Комментарии

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

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

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

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