java - Binary File IOException -


so, i've been have issues homework assignment 3 weeks now, , can't figure out how fix it.

i have write program search binary file of numbers of type int , have program write them smallest largest. file cannot contain numbers of type int.

here's program:

    import java.io.datainputstream;     import java.io.fileinputstream;     import java.io.filenotfoundexception;     import java.io.eofexception;     import java.io.ioexception;     import java.util.arrays;      public class binaryfile     {       public static void main(string[] args) throws ioexception       {         int[] numarray = new int[10];         try          {           datainputstream inputstream = new datainputstream(new fileinputstream("numbers.dat")); //creates object reads numbers.dat           system.out.println("reading integers numbers.dat");           int i;           for(i = 0;i < 10;i++) //takes numbers number.dat , puts them in numarray           {             numarray[i] = inputstream.readint();           }           inputstream.close();         }         catch(eofexception e)         {           system.out.println("end of file reached");         }         catch(filenotfoundexception e)         {           system.out.println("numbes.dat not found");           system.exit(0);         }         catch(ioexception e)         {           system.out.println("ioexception found");           e.printstacktrace;           system.exit(0);         }         catch(exception e)         {           system.out.println("other exception found.");           system.exit(0);         }         system.out.println("re-ordering numbers.");         arrays.sort(numarray); //reorders numbers in array         for(int j = 0; j < 10; j++) //prints out numbers in array         {           system.out.println(numarray[j]);         }       }     } 

the output follows:

    reading integers numbers.dat     end of file reached     java.io.eofexception         @ java.io.datainputstream.readint(unknown source)         @ binaryfile.main(binaryfile.java:23)         @ sun.reflect.nativemethodaccessorimpl.invoke0(native method)         @ sun.reflect.nativemethodaccessorimpl.invoke(unknown source)         @ sun.reflect.delegatingmethodaccessorimpl.invoke(unknown source)         @ java.lang.reflect.method.invoke(unknown source)         @ edu.rice.cs.drjava.model.compiler.javaccompiler.runcommand(javaccompiler.java:272)         @ sun.reflect.nativemethodaccessorimpl.invoke0(native method)         @ sun.reflect.nativemethodaccessorimpl.invoke(unknown source)         @ sun.reflect.delegatingmethodaccessorimpl.invoke(unknown source)         @ java.lang.reflect.method.invoke(unknown source)         @ edu.rice.cs.dynamicjava.symbol.javaclass$javamethod.evaluate(javaclass.java:362)         @ edu.rice.cs.dynamicjava.interpreter.expressionevaluator.handlemethodcall(expressionevaluator.java:92)         @ edu.rice.cs.dynamicjava.interpreter.expressionevaluator.visit(expressionevaluator.java:84)         @ koala.dynamicjava.tree.staticmethodcall.acceptvisitor(staticmethodcall.java:121)         @ edu.rice.cs.dynamicjava.interpreter.expressionevaluator.value(expressionevaluator.java:38)         @ edu.rice.cs.dynamicjava.interpreter.expressionevaluator.value(expressionevaluator.java:37)         @ edu.rice.cs.dynamicjava.interpreter.statementevaluator.visit(statementevaluator.java:106)         @ edu.rice.cs.dynamicjava.interpreter.statementevaluator.visit(statementevaluator.java:29)         @ koala.dynamicjava.tree.expressionstatement.acceptvisitor(expressionstatement.java:101)         @ edu.rice.cs.dynamicjava.interpreter.statementevaluator.evaluatesequence(statementevaluator.java:66)         @ edu.rice.cs.dynamicjava.interpreter.interpreter.evaluate(interpreter.java:77)         @ edu.rice.cs.dynamicjava.interpreter.interpreter.interpret(interpreter.java:47)         @ edu.rice.cs.drjava.model.repl.newjvm.interpreterjvm.interpret(interpreterjvm.java:246)         @ edu.rice.cs.drjava.model.repl.newjvm.interpreterjvm.interpret(interpreterjvm.java:220)         @ sun.reflect.nativemethodaccessorimpl.invoke0(native method)         @ sun.reflect.nativemethodaccessorimpl.invoke(unknown source)         @ sun.reflect.delegatingmethodaccessorimpl.invoke(unknown source)         @ java.lang.reflect.method.invoke(unknown source)         @ sun.rmi.server.unicastserverref.dispatch(unknown source)         @ sun.rmi.transport.transport$1.run(unknown source)         @ sun.rmi.transport.transport$1.run(unknown source)         @ java.security.accesscontroller.doprivileged(native method)         @ sun.rmi.transport.transport.servicecall(unknown source)         @ sun.rmi.transport.tcp.tcptransport.handlemessages(unknown source)         @ sun.rmi.transport.tcp.tcptransport$connectionhandler.run0(unknown source)         @ sun.rmi.transport.tcp.tcptransport$connectionhandler.lambda$run$240(unknown source)         @ sun.rmi.transport.tcp.tcptransport$connectionhandler$$lambda$1/15621596.run(unknown source)         @ java.security.accesscontroller.doprivileged(native method)         @ sun.rmi.transport.tcp.tcptransport$connectionhandler.run(unknown source)         @ java.util.concurrent.threadpoolexecutor.runworker(unknown source)         @ java.util.concurrent.threadpoolexecutor$worker.run(unknown source)         @ java.lang.thread.run(unknown source)     re-ordering numbers.     0     0     0     0     540090425     540483633     807416628     825368627     891304224     941634610 

basically, refusing read in numbers numbers.dat. i'm not sure problem is.

the numbers i'm using in numbers.dat are: 5 9 12 3 7 10 34 1 98 42

so object input stream not want.

you better datainputstream.

datainputstream inputstream = new datainputstream(new fileinputstream("numbers.dat"));