title: Japanese text in unicode
body: <p>I'm having a problem converting Japanese text into readable text. Right now I have a trial program that is getting values from the user. These value are then passed through a class that I've called word to create an object. Once the object has been created, I'm wanting to write and read the object to a file. Since I'm reading and writing objects I'm using the objectouput and input stream to do this. The problem with this is that I'm not sure how to encode the file in use to UTF-8 using while using the objectoutput and input stream. If I don't use any encoding I get question marks where the kana or kanji should be.</p>
  
  <p>Is there anyway to either convert a file to unicode using and objectoutput or input stream. If not, is there any other way to avoid getting question marks where kana or kanji should be?</p>
  
  <pre><code>    public class JavaApplication1 {
  
      /**
       * @param args the command line arguments
       */
  
      Scanner scan = new Scanner(System.in);
  
      public static void main(String[] args) throws FileNotFoundException, IOException, ClassNotFoundException, FontFormatException {
          // TODO code application logic here
          JavaApplication1 ja = new JavaApplication1();
          ja.start();
      }
      public void start() throws FileNotFoundException, IOException, ClassNotFoundException, FontFormatException{
  
          System.out.println("Enter Kanji");
          String Kanji = scan.next();
          System.out.println("Enter Romanji");
          String Romanji = scan.next();
          System.out.println("How common is it");
          int common = scan.nextInt();
          System.out.println("How many types of word is it?");
          int loop = scan.nextInt();
          ArrayList type = new ArrayList();
          for(int i = 0; i&lt;loop;i++){
              System.out.println("What type of word");
              type.add(scan.nextInt());
          }
          System.out.println("What type of adjective");
          int adjective = scan.nextInt();
          System.out.println("What type of verb");
          int verb = scan.nextInt();
          System.out.println("How many radicals");
          int loop2 = scan.nextInt();
           ArrayList radical = new ArrayList();
          for(int i = 0; i&lt;loop2;i++){
              System.out.println("radical");
              radical.add(scan.nextInt());
          }
          //String newKanji = GetUnicode(Kanji);
          Word word = new Word(Kanji,Romanji,common,type,adjective,verb,radical);
          word.getKanaKanji();
          store(word);
          //store(word);
          read();
  
      }
      public void store(Word word) throws FileNotFoundException, IOException, FontFormatException{
          File file = new File("test.dat");
          FileOutputStream outFileStream = new FileOutputStream(file);
          ObjectOutputStream oos = new ObjectOutputStream(outFileStream);
          oos.writeObject(word);
          oos.close();
      }
      public void read() throws FileNotFoundException, IOException, ClassNotFoundException, FontFormatException{
          File file = new File("test.dat");
          FileInputStream filein = new FileInputStream(file);
          ObjectInputStream ois = new ObjectInputStream(filein);
          Word word = (Word) ois.readObject();
          ois.close();
          System.out.println(word.getKanaKanji());//this gets the kanakanji  
  
      }
  }
  </code></pre>
  
  <p>When I call the Word class getKanaKanji method I get the question marks.</p>
  
  <p>I do have an OS that does support Japanese character's, so that is not an issue.</p>
  
  <p>Thank you in advance!</p>