Ricerca errori in java

di il
7 risposte

Ricerca errori in java

Buonasera, da poco sto usando java per la scuola, ho creato un programma che non riesco a compilare, non capisco dove sia l'errore (è un esercizio di preparazione per un compito, da consegnare).

Allego le immagini del programma e dell'errore:


https://s22.postimg.org/wdybvskht/Screenshot_2016_11_09_19_11_55.png


https://s11.postimg.org/xmztd8ylf/20161109_162246.jp



Sapete dirmi perché mi da quel problema perfavore?

7 Risposte

  • Re: Ricerca errori in java

    Simojava ha scritto:


    Sapete dirmi perché mi da quel problema perfavore?
    Il file scritto dall'editor è codificato con il charset UTF-8 con all'inizio il BOM (byte order mark).
    Non va bene per il compilatore. Ricodifica il file sorgente.


    P.S. il fatto che l'editor segni le parole in rosso, è solo lo spell-checking (io lo disabilito in TUTTI gli editor che uso )
  • Re: Ricerca errori in java

    Ciao, per me sono nuovi concetti. Ho cercato un po' su google, vediamo se ho capito quello che mi stai dicendo:
    In pratica il mio editor codifica i caratteri con un numero di bit diverso dal ASCII (dati dal UFT-8), inoltre quando salva mette una intestazione per far capire che codifica usa l'editor.
    Questa cosa va in conflitto con il compilatore (perché Incompatibile con la versione?)

    Io ho usato sempre lo stesso editor per scrivere i programmi e lo stesso compilatore, l'errore non dipende quindi dal codice che ho scritto ma da una impostazione base del contorno?
    Se quello che ho detto è giusto, come si fa la ricodifica?
  • Re: Ricerca errori in java

    Il problema è facilmente risolvibile cambiando l'encoding da UTF8 con BOM a UTF8 senza BOM. Dovresti riuscire a fare questo cambiamento dal menù "Encoding".
  • Re: Ricerca errori in java

    Grazie ragazzi, domani a scuova provo a cambiarlo.
    Posso sapere perché l'intestazione (BOM) fa generare un errore?
  • Re: Ricerca errori in java

    Simojava ha scritto:


    Posso sapere perché l'intestazione (BOM) fa generare un errore?
    La API nel package java.nio.charset ha il supporto per un gran numero di charset, compreso UTF-8 ma senza BOM. Difatti quando si usano le classi di I/O per leggere/scrivere su file, se usi UTF-8 il BOM lo devi (se vuoi) scrivere e leggere/interpretare tu programmaticamente ... non lo fa il charset decoder/encoder.
    E tutto questo presumo si rifletta anche a livello di compilatore (javac) che è scritto .. in Java.

    Regola semplice: nei file sorgente evitate di mettere il BOM. (specialmente per UTF-8, perché il BOM in UTF-8 ha ben poco senso)
  • Re: Ricerca errori in java

    Praticamente il compilatore non si aspetta la presenza del BOM, per cui interpreta i caratteri alla lettera e ne scaturisce un errore.
    Cercando su google è emersa questo link in cui viene segnalato il problema (che sembra verificarsi solo con UTF-8 fra l'altro). Purtroppo per motivi di retrocompatibilità questo bug non verrà mai risolto (vedi .
  • Re: Ricerca errori in java

    Il problema era quello, oggi l'ho risolto, grazie.
Devi accedere o registrarti per scrivere nel forum
7 risposte