Write out java vector results to file -


the program supposed calculate prime numbers using vectors , write results out file. when run it, calculates prime numbers 2-64 , prints out onto screen. when check text file it's creating, instead of results, writes out other data file. not doing right here?

import java.util.*; import java.io.*;  public class primebyvector {         public static void main(string[] args)         {         try         {                 objectoutputstream outputs = new objectoutputstream(new fileoutputstream("primenumbers.txt"));                 dataoutputstream dataos = new dataoutputstream(outputs);                 final int number_per_line = 10;                 int count = 0;         //      java.util.vector vector = new java.util.vector();                 vector v = new vector();                 system.out.println("the primes before 64 are: \n");                  (int n = 2; n < 64; n++)                 {                         boolean isprime = true;                         (int = 0; < v.size(); i++)                         {                                 int primenumber =                                         ((integer)(v.elementat(i))).intvalue();                                 if (primenumber > math.sqrt(n)) break;                                  if (n % primenumber == 0)                                 {                                         isprime = false;                                         break;                                 }                         }                         if (isprime)                         {                                 count ++;                                 v.addelement(new integer(n));                                 if (count % number_per_line == 0)                                 {                                         system.out.println(n);                                 }                                 else                                         system.out.print(n + " ");                         }                         dataos.write(n);                 }                 dataos.close();                  }                 catch(ioexception e)                 {                         system.out.println("error!!!!!");                 }         } } 

you're using dataoutputsteam used write out binary data. if want data written file in plan text form, instantiate output so:

printwriter out = new printwriter(new filewriter("primenumbers.txt")); 

then, when comes time output, this:

out.println(n); out.flush(); 

and close when done so:

out.close(); 

this print 1 per line; not sure if want.

also, noticed in code writing dataos outside of if statement checks if number prime, meaning writing numbers file , not prime numbers.

if need follow same convention in file system.out, change code this:

if (count % number_per_line == 0) {     system.out.println(n);     out.println(n); } else{     system.out.print(n + " ");     out.print(n + " "); } out.flush(); 

Comments