Come impedire a Htmltidy di convertire Umlauts (ad esempio ü a & uuml;)
-
20-09-2019 - |
Domanda
Il nostro sito Web esegue l'input dell'utente tramite htmltidy per pulirlo. Apparentemente, mentre lo fa, provoca anche dolore ai nostri abbonati internazionali convertendo Umlauts. Esiste un'opzione per specificare per Htmltidy per non farlo?
Ho provato il personaggio con tutte le possibili opzioni, ma nulla sembra funzionare.
Soluzione
Basta fornire una codifica di output (la codifica di input è facoltativa) nel file di configurazione:
input-encoding: win1252
output-encoding: latin1
Per una panoramica delle codifiche disponibili, guarda il Documentazione di codifica output.
MODIFICARE: Quindi stai usando il .Net bindings. Sono le stesse impostazioni:
Document d = new Document(new FileStream("in.html", FileMode.Open));
d.InputCharacterEncoding = EncodingType.Utf8;
d.OutputCharacterEncoding = EncodingType.Win1252;
d.CleanAndRepair();
d.Save("out.html");
Con la codifica corretta impostata, otterrai il risultato corretto, senza ü
e simili.
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow