Partager via


HttpServerUtility.HtmlEncode Méthode

Définition

Encode une chaîne pour l'afficher dans un navigateur.

Pour coder ou décoder les valeurs en dehors d’une application web, utilisez la classe WebUtility.

Surcharges

HtmlEncode(String)

Encode une chaîne au format HTML et retourne la chaîne encodée.

HtmlEncode(String, TextWriter)

Encode une chaîne au format HTML et envoie le résultat vers un flux de sortie TextWriter.

HtmlEncode(String)

Encode une chaîne au format HTML et retourne la chaîne encodée.

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

Paramètres

s
String

Chaîne de texte à encoder.

Retours

Texte encodé au format HTML.

Exemples

L’exemple suivant montre comment encoder au format HTML une valeur qui code potentiellement du code non sécurisé. Le code réside dans le fichier code-behind d’une page web. La valeur à encoder est codée en dur dans cet exemple uniquement pour simplifier l’exemple et afficher le type de valeur que vous pouvez encoder html. En règle générale, vous devez encoder au format HTML une valeur que vous avez reçue de l’utilisateur ou de la demande. Result fait référence à un Literal contrôle.

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

L’exemple suivant est similaire à l’exemple précédent, sauf qu’il montre comment encoder au format HTML une valeur à partir d’une classe qui ne se trouve pas dans le fichier code-behind.

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

Remarques

L’encodage HTML permet de s’assurer que le texte s’affiche correctement dans le navigateur et qu’il n’est pas interprété comme html. Par exemple, si une chaîne de texte contient un signe inférieur à (<) ou supérieur au signe (>), le navigateur interpréterait ces caractères comme le crochet ouvrant ou fermant d’une balise HTML. Lorsque les caractères sont encodés au format HTML, ils sont convertis en chaînes &lt; et &gt;, ce qui permet au navigateur d’afficher correctement le signe inférieur à et supérieur au signe.

Cette méthode est un moyen pratique d’accéder à la méthode au moment de l’exécution HttpUtility.HtmlEncode à partir d’une application ASP.NET. En interne, cette méthode utilise HttpUtility.HtmlEncode pour encoder des chaînes.

Dans le fichier code-behind d’une page web ASP.NET, accédez à une instance de la HttpServerUtility classe via la Server propriété . Dans une classe qui n’est pas dans un fichier code-behind, utilisez HttpContext.Current.Server pour accéder à une instance de la HttpServerUtility classe .

En dehors d’une application web, utilisez la WebUtility classe pour encoder ou décoder des valeurs.

S’applique à

HtmlEncode(String, TextWriter)

Encode une chaîne au format HTML et envoie le résultat vers un flux de sortie 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)

Paramètres

s
String

Chaîne à encoder.

output
TextWriter

Flux de sortie TextWriter qui contient la chaîne encodée.

Exemples

L’exemple suivant encode une chaîne pour la transmission par HTTP. Il encode la chaîne nommée TestString, qui contient le texte « Il s’agit d’une <chaîne> de test . » et la copie dans la chaîne nommée EncodedString « Il s’agit d’une <chaîne de> test ».

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()
   

Remarques

L’encodage HTML garantit que le texte sera correctement affiché dans le navigateur, et non interprété par le navigateur comme html. Par exemple, si une chaîne de texte contient un signe inférieur à (<) ou supérieur au signe (>), le navigateur interprète ces caractères comme un crochet ouvrant ou fermant d’une balise HTML. L’encodage HTML de ces deux caractères est &lt; et &gt;, respectivement, ce qui permet au navigateur d’afficher correctement le signe inférieur à et supérieur au signe.

HtmlEncode est un moyen pratique d’accéder à la méthode au moment de l’exécution HttpUtility.HtmlEncode à partir d’une application ASP.NET. En interne, HtmlEncode utilise HttpUtility.HtmlEncode pour encoder des chaînes.

Pour coder ou décoder les valeurs en dehors d’une application web, utilisez la classe WebUtility.

S’applique à