Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11

Discussione: [JAVA] Errore io

  1. #1
    Utente di HTML.it
    Registrato dal
    Jul 2002
    Messaggi
    655

    [JAVA] Errore io

    Dov'è l'errore in questo codice?
    codice:
    import java.io.*;
    public class Files implements Serializable
    {
    	OutputStream os;
    	InputStream  is;
    	ObjectOutputStream oos;
    	private String stringa;
    	ObjectInputStream ois;	
    	public void esegui() throws IOException
    	{
    	
    		 stringa="prova";
    		for(int i=0;i<stringa.length();i++) 
    		
    	  os.write(stringa.charAt(i));
    		
    		System.out.println(is.read());
    	}
    	public static void main(String arg[]) 
    	{
    	
    		Files file = new Files();
    	try{
    			file.esegui();
    		}
    		catch(Exception e)
    		{
    			e.printStackTrace();
    			System.out.println("Errori di IO");
    		}
    	}
    }
    codice:
    java.lang.NullPointerException
            at Files.esegui(Files.java:16)
            at Files.main(Files.java:25)
    Errori di IO
    Press any key to continue...

  2. #2
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013
    non hai detto chi sono is e os, solo cosa sono...
    <´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
    "The answer to your question is: welcome to tomorrow"

  3. #3
    Utente di HTML.it
    Registrato dal
    Jul 2002
    Messaggi
    655

    Nel Senso?

    Sono classi astratte non le posso instanziare col new.
    Cosa Intendi?

  4. #4
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013
    In questo senso:
    codice:
    public class istanzia {
      
      private String stringa;
      
      public istanzia() {
        System.out.print(stringa.length());
      }
      
      public static void main (String[] args) throws Exception {
        istanzia i = new istanzia();
      }  
    }
    <´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
    "The answer to your question is: welcome to tomorrow"

  5. #5
    Utente di HTML.it
    Registrato dal
    Jul 2002
    Messaggi
    655
    bhò

  6. #6
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013
    che stai passando a is che provi a leggere?

    Così è meglio?
    codice:
    import java.io.*;
    
    public class input_s {
      
      InputStream is;
      
      public input_s() throws Exception{
        byte[] b = "prova".getBytes();
        is = new ByteArrayInputStream(b);
        int c;
        while ((c = is.read()) != -1) {
          System.out.print((char)c+"\t");
        }    
      }
      
      public static void main (String args[]) {
        try {
          input_s input = new input_s();
        } catch (Exception e) {System.out.print(e.toString());}
      }
    }
    <´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
    "The answer to your question is: welcome to tomorrow"

  7. #7
    Utente di HTML.it L'avatar di Angelo1974
    Registrato dal
    Feb 2003
    Messaggi
    1,107
    Ciao; l'errore è che non hai inizializzato i seguenti oggetti:

    codice:
    OutputStream os;
    InputStream  is;
    ObjectOutputStream oos;
    ObjectInputStream ois;
    Lasciandoli così il loro valore di default è null --> se tenti di invocare un lor metodo avrai un NullPointerException.
    Ciao
    Se vuoi trovare l'arcobaleno, devi sopportare la pioggia

  8. #8
    Utente di HTML.it
    Registrato dal
    Jul 2002
    Messaggi
    655
    Che cmq non posso istanziare direttamente perchè sono classi astratte

  9. #9
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013
    leggi il mio secondo esempio.
    <´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
    "The answer to your question is: welcome to tomorrow"

  10. #10
    Utente di HTML.it L'avatar di Angelo1974
    Registrato dal
    Feb 2003
    Messaggi
    1,107
    Ciao; da premettere che non so bene cosa tu debba fare cmq dalle api java:

    codice:
    public class ObjectOutputStream
    extends OutputStream
    implements ObjectOutput, ObjectStreamConstants
    Quindi puoi fare una cosa del tipo:

    codice:
    OutputStream os = new ObjectOutputStream();
    ObjectOutputStream oos = new ObjectOutputStream();
    Idem per InputStream.
    Se vuoi trovare l'arcobaleno, devi sopportare la pioggia

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.