需求:

android存储字符串数据简单的有SharePerfence不过只能存储89kb最多的数据(好像),超过这个数据如果不方便网络存储,只能用文件存储了,这里写了一个工具类,存储到txt文件(不重要的数据,但是体量大)

代码:

1、工具类

package com.xxx.util;import android.os.Environment;import android.util.Log;import java.io.BufferedReader;import java.io.File;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.FileOutputStream;import java.io.IOException;import java.io.InputStream;import java.io.InputStreamReader;import java.io.RandomAccessFile;/** * 文件工具类 * Created by zst on 2018/2/1. */public class FileUtils {        // 将字符串写入到文本文件中    public static void writeTxtToFile(String strcontent, String filePath, String fileName) {        //生成文件夹之后,再生成文件,不然会出错        makeFilePath(filePath, fileName);        String strFilePath = filePath + fileName;        // 每次写入时,都换行写        String strContent = strcontent + "\r\n";        try {            File file = new File(strFilePath);            if (!file.exists()) {                Log.d("TestFile", "Create the file:" + strFilePath);                file.getParentFile().mkdirs();                file.createNewFile();            }            RandomAccessFile raf = new RandomAccessFile(file, "rwd");            raf.seek(file.length());            raf.write(strContent.getBytes());            raf.close();        } catch (Exception e) {            Log.e("TestFile", "Error on write File:" + e);        }    }    //生成文件    public static File makeFilePath(String filePath, String fileName) {        File file = null;        makeRootDirectory(filePath);        try {            file = new File(filePath + fileName);            if (!file.exists()) {                file.createNewFile();            }        } catch (Exception e) {            e.printStackTrace();        }        return file;    }    //生成文件夹    public static void makeRootDirectory(String filePath) {        File file = null;        try {            file = new File(filePath);            if (!file.exists()) {                file.mkdir();            }        } catch (Exception e) {            Log.i("error:", e + "");        }    }    //读取指定目录下的所有TXT文件的文件内容    public static String getFileContent(File file) {        String content = "";        if (!file.isDirectory()) {  //检查此路径名的文件是否是一个目录(文件夹)            if (file.getName().endsWith("txt")) {//文件格式为""文件                try {                    InputStream instream = new FileInputStream(file);                    if (instream != null) {                        InputStreamReader inputreader                                = new InputStreamReader(instream, "UTF-8");                        BufferedReader buffreader = new BufferedReader(inputreader);                        String line = "";                        //分行读取                        while ((line = buffreader.readLine()) != null) {                            content += line + "\n";                        }                        instream.close();//关闭输入流                    }                } catch (java.io.FileNotFoundException e) {                    Log.d("TestFile", "The File doesn't not exist.");                } catch (IOException e) {                    Log.d("TestFile", e.getMessage());                }            }        }        return content;    }}

2、调用 - 写入

FileUtils.writeTxtToFile(idPASideBase64, "/sdcard/Gyt/", "idPASide.txt");

3、调用 - 读取

String idPASideBase64 = FileUtils.getFileContent(new File("/sdcard/Gyt/idPASide.txt"));

 

更多相关文章

  1. Android视频文件格式解析相关分析
  2. 使用SAX或者DOM或者pull解析XML文件
  3. android 数据持久化——File
  4. Android读取文件方法总结
  5. Android使用PULL解析和生成XML文件
  6. android中svg文件的使用
  7. android资源文件之:shape详解
  8. Android 代码实现查看SQLite数据库中的表

随机推荐

  1. go语言中的排序讲解
  2. golang怎么给slice赋长度
  3. Go语言异常处理的方法介绍
  4. golang怎么拼接字符串数组
  5. golang使用protobuf的方法详解
  6. golang怎么定时任务
  7. golang如何写http请求
  8. go语言结构体组合函数介绍
  9. golang错误抛出的方法
  10. golang测试是否能ping通