1

我一直在搜索,但不知道如何做到这一点。我正在创建一个基于块的游戏,比方说屏幕上的 3x3 块,每个块都有一个int关联以知道它是哪种类型:

int[][] blocksArray = {
    { 0, 0, 0 }
    { 0, 0, 1 }
    { 0, 0, 0 }
};

我基本上想做的是将50个像这样的多维数组保存到一个文件中,比如说“levels.txt”,就像这样:

int[][] level1 = {
    { 0, 0, 0 }
    { 0, 0, 1 }
    { 0, 0, 0 }
};
...
int[][] level50 = {
    { 0, 0, 0 }
    { 0, 0, 0 }
    { 0, 0, 0 }
};

这是解决问题的好方法吗?有没有更好的方法?

我真的不想制作我的数组字符串并将它们保存到共享首选项中,因为我需要手动编辑很多级别数组并且我想要这种格式,或者可能是一种非常相似的方式来做到这一点?

4

1 回答 1

1

您可以使用 java.io.ObjectOutputStream(); 将数组保存在文件中;

    ObjectOutputStream oos = new ObjectOutputStream(new FileOutputStream("file"));
    oos.writeObject(level1);
    ...
    oos.writeObject(level50);

然后读回你的数组:

    ObjectInputStream ois = new ObjectInputStream(new FileInputStream("file"));
    level1 = (int[]][])ois.readObject();
    ...
    level50 = (int[]][])ois.readObject();

如果真的是你想要的

于 2012-11-22T14:16:26.460 回答