2016-07-09 2 views
0

В настоящее время у меня есть Object[][], который содержит 2D-массив, этот массив будет управляться с использованием временных массивов и что бы не увеличивать размер (это то, что я выяснил до сих пор).Сохранить объект [] [] и загрузить его

Что я хочу, когда программа выходит из нового экземпляра Object[][], сохраняется, а затем, когда он запускается, я хочу загрузить новый Object[][]. Я собираюсь сделать его файлом, а затем использовать токенизатор для заполнения Object[][] в начале. Я направляюсь в правильном направлении?

+1

Если ваша программа завершена, объект, очевидно, потерян. Вам нужно сохранить его информацию где-нибудь, например: как json-файл, посмотрите на googles gson, это довольно просто https://sites.google.com/site/gson/gson-user-guide –

+1

Взгляните на [ 'ObjectInputStream'] (https://docs.oracle.com/javase/7/docs/api/java/io/ObjectInputStream.html) и [' ObjectOutputStream'] (https://docs.oracle.com/javase/ 7/документы/API/Java/IO/ObjectOutputStream.html). [Этот учебник] (https://examples.javacodegeeks.com/core-java/io/objectinputstream/java-objectinputstream-and-objectoutputstream-example/) также может помочь. – MasterBlaster

ответ

0

Так вот как я смог выяснить, как сохранить и загрузить объект [] [].

Чтобы сохранить файл, я должен сначала иметь переменную Object [] [], содержащую по крайней мере один массив объектов. Тогда я сэкономил/создал файл, например так:

public void saveFile(Object[] variable){ 
     ObjectOutputStream oos = new ObjectOutputStream(new 
       FileOutputStream(filename)); 
     oos.writeObject(variable); 
     oos.close(); 

} 

затем загрузить его в качестве такового:

public void loadFile(){ 
    ObjectInputStream ois = new ObjectInputStream(new 
      FileInputStream(filename)); 
    players = (Object[][]) ois.readObject(); 
    ois.close(); 
} 

Я знаю, что я просто перезаписывать файл с новым, но это лучшее решение, которое я был способный к выяснению. Спасибо @MasterBlaster за вашу помощь, и @MadMatts Я просто не мог понять, как использовать gson, может быть, я буду в другой раз, но спасибо вам, тем не менее!

Смежные вопросы