Domanda

<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>
<!--#include file="conn.asp"-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

Il codice sopra riportato è corretto?

È stato utile?

Soluzione

Sì.

UTF-8 è CP65001 in Windows (che è solo un modo per specificare UTF-8 nella roba della tabella codici legacy). Per quanto ho letto ASP può gestire UTF-8 quando specificato in questo modo.

Altri suggerimenti

Il tuo codice è corretto anche se preferisco impostare CharSet nel codice piuttosto che utilizzare il meta tag: -

<% Response.CharSet = "UTF-8" %>

La tabella codici 65001 si riferisce al set di caratteri UTF-8. Dovresti assicurarti che la tua pagina asp (e qualsiasi include) siano salvati come UTF-8 se contengono caratteri al di fuori del set di caratteri ASCII standard.

Specificando l'attributo CODEPAGE nel blocco <% @ stai indicando che qualsiasi cosa scritta usando Response.Write dovrebbe essere codificata nella Codepage specificata, in questo caso 65001 (utf-8). Vale la pena ricordare che ciò non influisce su alcun contenuto statico che viene inviato byte di parole testuali per byte alla risposta. Da qui il motivo per cui il file deve essere effettivamente salvato utilizzando la tabella codici specificata.

La proprietà CharSet della risposta imposta il valore CharSet dell'intestazione Content-Type. Ciò non ha alcun impatto sul modo in cui il contenuto può essere codificato, ma indica semplicemente al client quale codifica viene ricevuta. Ancora una volta è importante che il suo valore corrisponda alla codifica effettiva inviata.

Sì, 65001 è l'identificatore della code page di Windows per UTF-8, come documentato sul sito Web Microsoft . Wikipedia suggerisce che la codepage IBM 128 e la codepagina SAP 4110 sono anche indicatori per UTF-8.

response.codepage = 65001

sembra dare un risultato negativo quando il file fisico viene salvato come utf-8

Altrimenti, funziona come dovrebbe.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top