Udostępnij za pośrednictwem


HttpServerUtility.HtmlDecode Metoda

Definicja

Dekoduje ciąg zakodowany w celu wyeliminowania nieprawidłowych znaków HTML.

Aby zakodować lub dekodować wartości poza aplikacją internetową, użyj klasy WebUtility.

Przeciążenia

HtmlDecode(String)

Dekoduje ciąg zakodowany w formacie HTML i zwraca dekodowany ciąg.

HtmlDecode(String, TextWriter)

Dekoduje ciąg zakodowany w formacie HTML i wysyła wynikowe dane wyjściowe do strumienia wyjściowego TextWriter.

HtmlDecode(String)

Dekoduje ciąg zakodowany w formacie HTML i zwraca dekodowany ciąg.

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

Parametry

s
String

Ciąg HTML do dekodowania.

Zwraca

Zdekodowany tekst.

Przykłady

Poniższy przykład zawiera funkcję LoadDecodedFile, która dekoduje dane z pliku i kopiuje je do jednego ciągu.

<%@ 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>

Uwagi

Kodowanie HTML zapewnia poprawne wyświetlanie tekstu w przeglądarce i nie jest interpretowane przez przeglądarkę jako kod HTML. Jeśli na przykład ciąg tekstowy zawiera znak mniejszy niż (<) lub większy niż znak (>), przeglądarka zinterpretuje te znaki jako nawias otwierający lub zamykający tagu HTML. Gdy znaki są zakodowane w formacie HTML, są konwertowane na ciągi &lt; i &gt;, co powoduje, że przeglądarka wyświetla mniej niż znak i jest większa niż znak poprawnie. HtmlDecode dekoduje tekst, który został przesłany do serwera.

Ta metoda jest wygodnym sposobem uzyskiwania dostępu do metody HttpUtility.HtmlDecode w czasie wykonywania z aplikacji ASP.NET. Wewnętrznie ta metoda używa HttpUtility.HtmlDecode do dekodowania ciągów.

W pliku za pomocą kodu dla strony internetowej ASP.NET uzyskaj dostęp do wystąpienia klasy HttpServerUtility za pośrednictwem właściwości Server. W klasie, która nie znajduje się w pliku za kodem, użyj HttpContext.Current.Server, aby uzyskać dostęp do wystąpienia klasy HttpServerUtility.

Poza aplikacją internetową użyj klasy WebUtility do kodowania lub dekodowania wartości.

Dotyczy

HtmlDecode(String, TextWriter)

Dekoduje ciąg zakodowany w formacie HTML i wysyła wynikowe dane wyjściowe do strumienia wyjściowego 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)

Parametry

s
String

Ciąg HTML do dekodowania.

output
TextWriter

Strumień wyjściowy TextWriter zawierający zdekodowany ciąg.

Przykłady

Poniższy przykład dekoduje ciąg zakodowany w formacie HTML na potrzeby transmisji za pośrednictwem protokołu HTTP. Koduje podany ciąg o nazwie EncodedString zawierający tekst "Jest to <ciąg testowy>" i kopiuje go do ciągu o nazwie DecodedString jako "Jest to ciąg testowy <>.".

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

Uwagi

Kodowanie HTML zapewnia poprawne wyświetlanie tekstu w przeglądarce i nie jest interpretowane przez przeglądarkę jako kod HTML. Jeśli na przykład ciąg tekstowy zawiera znak mniejszy niż (<) lub większy niż znak (>), przeglądarka zinterpretuje te znaki jako nawias otwierający lub zamykający tagu HTML. Gdy znaki są zakodowane w formacie HTML, są konwertowane na ciągi &lt; i &gt;, co powoduje, że przeglądarka wyświetla mniej niż znak i jest większa niż znak poprawnie.

HtmlDecode dekoduje tekst, który został przesłany do serwera.

HtmlDecode to wygodny sposób uzyskiwania dostępu do metody HttpUtility.HtmlDecode w czasie wykonywania z aplikacji ASP.NET. Wewnętrznie HtmlDecode używa HttpUtility.HtmlDecode do dekodowania ciągów.

Aby zakodować lub dekodować wartości poza aplikacją internetową, użyj klasy WebUtility.

Dotyczy