Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/url/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在Android中将数据存储到平面文件中?_Android_Flat File - Fatal编程技术网

如何在Android中将数据存储到平面文件中?

如何在Android中将数据存储到平面文件中?,android,flat-file,Android,Flat File,我想以高分的形式存储一些值。但是因为我不会存储超过5个值,所以使用SQLite似乎并不合适。我正在考虑的另一个选项是平面文件,但我不确定如何实现…有关数据存储选项,请参阅。我想在您的情况下,最简单的方法是使用SharedReference 您还可以使用内部存储将数据保存在应用程序专用的文件中。我不建议使用外部存储来存储高分。有关数据存储选项,请参阅。我想在您的情况下,最简单的方法是使用SharedReference 您还可以使用内部存储将数据保存在应用程序专用的文件中。我不建议使用外部存储来存储

我想以高分的形式存储一些值。但是因为我不会存储超过5个值,所以使用SQLite似乎并不合适。我正在考虑的另一个选项是平面文件,但我不确定如何实现…

有关数据存储选项,请参阅。我想在您的情况下,最简单的方法是使用SharedReference

您还可以使用内部存储将数据保存在应用程序专用的文件中。我不建议使用外部存储来存储高分。

有关数据存储选项,请参阅。我想在您的情况下,最简单的方法是使用SharedReference


您还可以使用内部存储将数据保存在应用程序专用的文件中。我不建议使用外部存储来存储高分。

如果它是一个阵列,您可以使用以下方法:

    public void saveArray(String filename, String[] output_field) {
         try {
            FileOutputStream fos = new FileOutputStream(filename);
            GZIPOutputStream gzos = new GZIPOutputStream(fos);
            ObjectOutputStream out = new ObjectOutputStream(gzos);
            out.writeObject(output_field);
            out.flush();
            out.close();
         }
         catch (IOException e) {
             e.getStackTrace();
         }
      }

      @SuppressWarnings("unchecked")
    public String[] loadArray(String filename) {
          try {
            FileInputStream fis = new FileInputStream(filename);
            GZIPInputStream gzis = new GZIPInputStream(fis);
            ObjectInputStream in = new ObjectInputStream(gzis);
            String[] read_field = (String[])in.readObject();
            in.close();
            return read_field;
          }
          catch (Exception e) {
              e.getStackTrace();
          }
          return null;
      }
你可以这样称呼它:

Save Array: saveArray("/sdcard/.mydata/data.dat", MyArray);
Load Array: String[] MyArray = loadArray("/sdcard/.mydata/data.dat");

您可以在

上看到一个示例,如果它是一个数组,您可以使用:

    public void saveArray(String filename, String[] output_field) {
         try {
            FileOutputStream fos = new FileOutputStream(filename);
            GZIPOutputStream gzos = new GZIPOutputStream(fos);
            ObjectOutputStream out = new ObjectOutputStream(gzos);
            out.writeObject(output_field);
            out.flush();
            out.close();
         }
         catch (IOException e) {
             e.getStackTrace();
         }
      }

      @SuppressWarnings("unchecked")
    public String[] loadArray(String filename) {
          try {
            FileInputStream fis = new FileInputStream(filename);
            GZIPInputStream gzis = new GZIPInputStream(fis);
            ObjectInputStream in = new ObjectInputStream(gzis);
            String[] read_field = (String[])in.readObject();
            in.close();
            return read_field;
          }
          catch (Exception e) {
              e.getStackTrace();
          }
          return null;
      }
你可以这样称呼它:

Save Array: saveArray("/sdcard/.mydata/data.dat", MyArray);
Load Array: String[] MyArray = loadArray("/sdcard/.mydata/data.dat");
你可以在网站上看到一个例子