• Android-Context的IO功能


      如何将应用数据保存到本地文件?如何从本地文件加载数据到应用中?我实现的步骤是:

      应用(java数据)<--org.json-->JSONString<--Context.IO-->本地文件

      今天向读者讲解的是Context.IO部分。

    File getDir(String name, int mode)

    获取/data/data/<packagename>/目录的子目录(如不存在就先创建
    它)

    File getFilesDir() 获取/data/data/<packagename>/files目录
    File getCacheDir()

    获取/data/data/<packagename>/cache目录。应注意及时清理该目录,并节约使用空间

    String[] fileList()

    获取/data/data/<packagename>/files目录下的文件列表。可与其他方
    法配合使用,例如openFileInput(String)

    FileInputStream openFileInput(String name) 打开现有文件进行读取

    FileOutputStream openFileOutput(String
    name, int mode)

    打开文件进行写入,如不存在就创建它

     Context.IO实现本地文件的字符串输入输出

    public class SerializerUtils {
        
        
        
        public static void save(Context c,String fileName,String data) throws IOException{
            Writer writer=null;
            try{
            OutputStream out=c.openFileOutput(fileName, Context.MODE_PRIVATE);
            writer=new OutputStreamWriter(out);
            writer.write(data);
            }finally{
                if(writer!=null){
                    writer.close();
                }
            }
        }
        
        public static String load(Context c,String fileName)throws IOException{
            StringBuilder data=new StringBuilder();
            BufferedReader reader=null;
            try{
                InputStream in=c.openFileInput(fileName);
                reader=new BufferedReader(new InputStreamReader(in));
                String line=null;
                while((line=reader.readLine())!=null){
                    data.append(line);
                }
            }finally{
                if(reader!=null){
                    reader.close();
                }
            }
            return data.toString();
        }
    
    }
  • 相关阅读:
    【C】中malloc的使用
    【C++】const成员函数的作用
    C声明和定义
    【C++】指针与引用的区别
    【C】external/internal/static/register variable and function
    【C++】Sizeof与Strlen
    【面试题目】string类实现
    【C++】public,private,protected
    【Linux】僵尸进程
    【面试题目】翻转句子中单词的顺序
  • 原文地址:https://www.cnblogs.com/JiMoRuXue/p/5056198.html
Copyright © 2020-2023  润新知