2014-04-01 22 views
9

Quello che voglio come risultato finale è questo appaiacome inserire la ≠ firmare in una stringa

System.out.println("This is the not equal to sign\n≠"); 

(quando viene eseguito) come

This is the not equal to sign 
≠ 
non

di apparire come

This is the not equal to sign 
? 

C'è un modo per farlo? Ho provato ad usare la mappa dei caratteri di Windows, ho copiato il simbolo qui e nel mio codice, ma dopo aver cambiato la codifica in UTF-8 e averlo inserito, viene fuori come? quando si esegue ...
Cosa si può fare? Grazie in anticipo per le risposte a questo assolutamente semplice domanda

+5

Sembra un problema con la codifica della tua console, non con il programma Java. http://ideone.com/OJhKeG - funziona bene – Crozin

+3

Probabilmente è la tua console. Ma per essere sicuri che non sia la codifica del file che è in errore, puoi usare l'uscita Unicode '\ u2260' invece del carattere' ≠ 'nella stringa. –

+0

Sono d'accordo con Crozin. Puoi testarlo scrivendo su un file invece di stdout, e quindi aprendo il file in un editor che sai può gestire unicode. Se funziona, significa che Java gestisce correttamente i byte e il problema deve essere la tua console. – yshavit

risposta

6

Impostare la codifica dei caratteri su UTF-8, passare questo argomento vm, se l'editor di testo utilizza già UTF-8 o supporta questo carattere

-Dfile.encoding=UTF-8 
4

Come @Tobias Brandt dice, si potrebbe usare: \u2260

E btw anche @Crozin è giusto sulla configurazione della console

Ti piace questa

System.out.println("This is the not equal to sign \n\u2260"); 
0

Quando si salva il file java, assicurarsi che sia salvato nello stesso set di caratteri di quello aperto.

Nella mia Eclipse, quando salvi un file con caratteri speciali (come \ u2260) mi chiede quale set di caratteri voglio utilizzare.

Aprire il file nel terminale e controllare il contenuto del file.

Assicurarsi che sia lo stesso carattere nell'editor in uso.

3

Ci sono cinque potenziali problemi qui:

1) In quale codifica stai salvando (charset dal vostro editor) si sorgente di Java?

2) Quale charset codifica il compilatore java presuppone?

3) Quale set di caratteri è la tua console?

4) Si sta utilizzando un terminale con traduzione?

5) Il font della console include quel particolare carattere?

Per risolvere i problemi 1-2, è necessario utilizzare UTF-8 per entrambe le impostazioni (editor e javac) o più robusto, specificare il carattere Unicode con testo ASCII puro con escape (risposta Frakcool).

Per il numero 3, provare -Dfile.encoding=UTF-8 o vedere questo answer. I problemi 4-5 sono al di fuori dell'ambito del programma Java. Se non si è sicuri, è sufficiente reindirizzare l'output su un file e visualizzarlo con un editor esadecimale.

0

Sembra che dopo che Eclipse mi ha chiesto se volevo passare a UTF-8, ha funzionato, solo dopo averlo postato. Scusa per aver perso tempo

Problemi correlati