Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it L'avatar di userfra
    Registrato dal
    Jul 2001
    Messaggi
    1,418

    [JAVA] carattere speciale

    Ciao a tutti, ho un problema di questo tipo, creando un file da unix, e trasferito il file su macchina windows, ad ogni carriage return, mi ritrovo un quadratino, perchè?

    grazie ciao
    -------------------------------------------------
    Il fumo nuoce gravemente alla salute

  2. #2
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,304
    Perchè Windows, per andare a capo, utilizza la sequenza di caratteri 0x0D + 0x0A, mentre i sistemi come Unix credo utilizzino solo 0x0A (o solo 0x0D).

    Se apri il file con il WordPad non dovresti avere problemi in visualizzazione.


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  3. #3
    Utente di HTML.it L'avatar di userfra
    Registrato dal
    Jul 2001
    Messaggi
    1,418
    Originariamente inviato da LeleFT
    Perchè Windows, per andare a capo, utilizza la sequenza di caratteri 0x0D + 0x0A, mentre i sistemi come Unix credo utilizzino solo 0x0A (o solo 0x0D).

    Se apri il file con il WordPad non dovresti avere problemi in visualizzazione.


    Ciao.
    si infatti, ok...

    solo che la necessità è che venga utilizzato il notepad
    -------------------------------------------------
    Il fumo nuoce gravemente alla salute

  4. #4
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,304
    Beh, non avendo nessuna riga di codice del tuo programma, ti posso solo consigliare di forzare la sequenza 0x0D + 0x0A alla fine di ogni riga. Esempio:
    codice:
    import java.io.*;
    public class Scrivi {
       public static void main(String[] args) throws Exception {
          PrintStream ps = new PrintStream( new FileOutputStream("Pippo.txt") );
          ps.print("Ciao" + ((char)0x0D) + ((char)0x0A));
          ps.print("Ciao" + ((char)0x0D) + ((char)0x0A));
       }
    }
    PS: Sotto Windows il tutto si potrebbe tranquillamente fare utilizzando il metodo println, ma non so se sotto Unix verrebbe generato un file con la sequenza corretta anche per Win (ne dubito...).


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  5. #5
    Utente di HTML.it L'avatar di userfra
    Registrato dal
    Jul 2001
    Messaggi
    1,418
    Originariamente inviato da LeleFT
    Beh, non avendo nessuna riga di codice del tuo programma, ti posso solo consigliare di forzare la sequenza 0x0D + 0x0A alla fine di ogni riga. Esempio:
    codice:
    import java.io.*;
    public class Scrivi {
       public static void main(String[] args) throws Exception {
          PrintStream ps = new PrintStream( new FileOutputStream("Pippo.txt") );
          ps.print("Ciao" + ((char)0x0D) + ((char)0x0A));
          ps.print("Ciao" + ((char)0x0D) + ((char)0x0A));
       }
    }
    PS: Sotto Windows il tutto si potrebbe tranquillamente fare utilizzando il metodo println, ma non so se sotto Unix verrebbe generato un file con la sequenza corretta anche per Win (ne dubito...).


    si infatti, ho aggiunto \r\n

    e funziona

    grazie


    Ciao.
    -------------------------------------------------
    Il fumo nuoce gravemente alla salute

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.