fede089 Inviato 14 Dicembre 2009 Segnala Condividi Inviato 14 Dicembre 2009 Ciao! Ho creato il seguente file java d'esempio con xCode: // file: Prova.java public class Prova { public static void main(String[] args) { char c = 'è'; } } compilo con javac Prova.java, ma mi dà i suguenti errori (i ^ non sono venuti sotto ciò che in realtà indicano): Prova.java:3: unclosed character literal char c = 'è'; ^ Prova.java:3: illegal character: \174 char c = 'è'; ^ Prova.java:3: unclosed character literal char c = 'è'; ^ 3 errors come se al posto di 'è' ci fosse 'aa'!Sui computer dei miei amici che hanno Windows, il compilatore java lo compila senza problemi... secondo voi dov'è il problema?? versione javac: 1.6.0_17 versione OS: 10.6.2 Link al commento Condividi su altri siti Altre opzioni di condivisione...
canemacchina00 Inviato 14 Dicembre 2009 Segnala Condividi Inviato 14 Dicembre 2009 Ad occhio solo un problema di encoding del file sorgente. Non so come gestisca la cosa Xcode, io ti dico di Eclipse, vedi se ti aiuta... Eclipse di base usa l'encoding in UNICODE (dato che è scritto in java). Tutto ok quando scrivo codice con eclipse, compilo con eclipse, ecc.. Se invece capita che prendo del codice da qualcuno che usa editor con encoding diverso (tipo UTF- allora i caratteri accentati danno problemi anche a me. Semplicemente o prendo un programma qualsiasi che converta i formati (e converto il file .java da UTF-8 a UNICODE) oppure imposto Eclipse che faccia encoding nel formato corretto (in questo caso UTF- e il problema scompare. Link al commento Condividi su altri siti Altre opzioni di condivisione...
MacMomo Inviato 15 Dicembre 2009 Segnala Condividi Inviato 15 Dicembre 2009 converto il file .java da UTF-8 a UNICODE UTF-8 è Unicode, solo che è una sua versione. Molto più probabilmente il problema è che usa l'encoding UTF-16, che è sempre Unicode, ma usa 2 byte (16 bit) per registrare ogni carattere (al contrario dell'UTF-8 che usa 8 bit, quindi 1 byte). Andando a settare una variabile char, che potrebbe contenere un solo byte, con 2 byte, è probabile che il compilatore dia errore. Dovresti, come suggerito da canemacchina00, provare ad impostare la codifica su UTF-8. Marco - Gallery MacBook Nero 2.2 GHz Intel Core 2 Duo - 4 GB RAM - Mac OS X 10.6 Snow Leopard Link al commento Condividi su altri siti Altre opzioni di condivisione...
m@rco Inviato 15 Dicembre 2009 Segnala Condividi Inviato 15 Dicembre 2009 e cmq considera di passare ad Eclipse che per Java è decisamente più comodo, non fosse altro che ti eviti di dover compilare con javac... Link al commento Condividi su altri siti Altre opzioni di condivisione...
fede089 Inviato 15 Dicembre 2009 Autore Segnala Condividi Inviato 15 Dicembre 2009 Ok, è un problema di encoding del file, solo che ho visto che è Unicode (UTF-, la codifica con cui tratta i caratteri java, ho provato con UTF-16, ma il risultato è uguale. Funziona se NON uso Unicode, tipo Western (Mac OS Roman). Anche se da java mi sarei aspettato il contrario.. Ho provato Eclipse: molto interessante.. comunque per quanto riguarda la prova col carattere accentato ho creato un nuovo progetto, quindi una classe con il codice postato ed ha funzionato. Ho controllato la codifica del file, era Mac OS Roman. Ho provato a cambiarla con UTF-8 da dentro Eclipse, ho ri-compilato e funziona!! Lo stesso file (UTF- compilato da terminale con javac da gli stessi errori descritti precedentemente. Quando ho creato il progetto ho impostato la jvm da usare con quella di Mac OS X... come compilatore Eclipse usa il javac richiamabile da terminale o un altro che magari ha dentro il proprio "pacchetto"? Grazie per le risposte. Link al commento Condividi su altri siti Altre opzioni di condivisione...
frankmac Inviato 8 Giugno 2011 Segnala Condividi Inviato 8 Giugno 2011 Io ho un problema simile.. Mi è stato passato un progetto in Java, creato su Win, che contiene dei file con chiave pubblica e privata (RSA). SU Win tutto ok, ma se provo ad utilizzare su Osx non va. Sono sicuro che il problema è dovutao alla codifica... come posso risolvere? Link al commento Condividi su altri siti Altre opzioni di condivisione...
Messaggi raccomandati
Archiviato
Questa discussione è archiviata e chiusa a future risposte.