HttpServerUtility.HtmlEncode Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Encode une chaîne à afficher dans un navigateur.
Pour encoder ou décoder des valeurs en dehors d’une application web, utilisez la WebUtility classe.
Surcharges
| Nom | Description |
|---|---|
| HtmlEncode(String) |
Code HTML encode une chaîne et retourne la chaîne encodée. |
| HtmlEncode(String, TextWriter) |
Code HTML encode une chaîne et envoie la sortie obtenue à un TextWriter flux de sortie. |
HtmlEncode(String)
Code HTML encode une chaîne 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 à coder.
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 codez 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 n’est 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é 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 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 < et >, ce qui entraîne l’affichage correct du navigateur au-delà du signe et supérieur au signe.
Cette méthode est un moyen pratique d’accéder à la méthode HttpUtility.HtmlEncode au moment de l’exécution à 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 classe HttpServerUtility via la propriété Server. Dans une classe qui n’est pas dans un fichier code-behind, utilisez-la 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)
Code HTML encode une chaîne et envoie la sortie obtenue à un TextWriter flux de sortie.
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 TextWriter de sortie 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 ». Elle 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 à un< 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 < et >, respectivement, ce qui entraîne l’affichage correct du navigateur inférieur au signe et supérieur au signe.
HtmlEncode est un moyen pratique d’accéder à la méthode HttpUtility.HtmlEncode au moment de l’exécution à partir d’une application ASP.NET. En interne, HtmlEncode utilise HttpUtility.HtmlEncode pour encoder des chaînes.
Pour encoder ou décoder des valeurs en dehors d’une application web, utilisez la WebUtility classe.