2009-02-12 14 views
6

Ho a problem con codifica caratteri in alcune pagine HTML. Sembra che la causa del problema è che alcuni dei file .html non vengono salvati come file codificati in UTF-8. Anche se ho ordinato a Eclipse di salvare questi file come UTF-8, quando li apro in un browser, indica che i file sono ISO-8859-1.modifica codifica file

Come posso modificare la codifica di questi file su UTF-8?

UPDATE: ho già avere il seguente incluso nella sezione di ogni pagina web

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> 

Sto usando il web server Apache.

Grazie, Donal

+0

Quale server Web stai utilizzando? – Akrikos

risposta

7

Potrebbe essere necessario modificare l'intestazione del tipo di contenuto che il server Web invia al client.

Modifica: anche se questo ha funzionato per questa particolare situazione, l'utilizzo di uno strumento per modificare la codifica dei file come suggerito da altri poster può essere una soluzione migliore in altre situazioni. YMMV.


Istruzioni per il salvataggio come UTF-8 in Eclipse (che mi rendo conto già):

probabilmente si dovrebbe cambiare la codifica di default nel vostro spazio di lavoro per il documento HTML.

Questo è per Eclipse 3.4. Se hai una versione diversa, questa potrebbe essere leggermente diversa.

Goto Finestra-> Preferenze
Nella finestra Preferenze goto Generale-> tipi di contenuto
A questo punto, è possibile specificare un 'Codifica predefinita' per i file nella parte inferiore della finestra delle preferenze. Espandi "Testo" e seleziona HTML. Nella voce "Codifica predefinita", inserisci UTF-8. Quindi fai clic su "aggiorna" a destra.

Dopo questo, tutti i file HTML devono essere salvati in formato UTF-8.

4

Il problema con UTF-8 è che non esiste una sequenza di byte magia all'inizio di questi file - unica possibilità del browser di rilevare UTF-8 è dalla dichiarazione XML, HTML meta tag o alcune euristiche come fallback.

Assicurarsi che sia presente una dichiarazione di codifica XML o alcuni meta tag HTML nell'intestazione dell'HTML.

<?xml version="1.0" encoding="utf-8"?> 

appena sotto DOCTYPE se è XHTML, o

<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> 

nella sezione head.

3

È possibile utilizzare iconv per convertire i file da una codifica di caratteri a un'altra.

1

Prova ad aggiungere

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 

alla sezione di testa dei file html, o assicurarsi che il server sta servendo i file con un'intestazione HTTP Content-Type. Senza uno di questi, il browser può solo indovinare la codifica dei caratteri.

0

Per quanto ne so, l'impostazione della codifica dei caratteri in Eclipse in realtà non converte i file - dice semplicemente a Eclipse come li vuoi interpretare. La soluzione migliore è utilizzare uno strumento di conversione come quello suggerito da Adam.

1

In Eclipse 3.7, visitare il sito:

di Windows> Preferenze> Generale> Area di lavoro

Sotto "File di testo codifica" impostare il file di codifica è necessario.