• Android面试收集录 文件存储


    1.请描述Android SDK支持哪些文件存储技术?

    • 使用SharePreferences保存key-value类型的数据
    • 流文件存储(openFileOutput+openFileInput或FileInputStream+FileOutputStream)
    • XML半结构化存储
    • Json保存数组核对象
    • 数据库保存结构化数据

    2.如何使用SharePreference?

    • 获取对象:Context.getSharedPreferences获取,如getSharedPreferences("名字",Activity.MODE_PRIVATE),这个模式是只有当前程序可以读写
    • 获取写的对象:SharePreferences.Editor=mySharePreferences.edit();
    • 写数据:editor.putString("key","value");
    • 提交:editor.commit();

    3.用SharedPreferences保存的数据文件存放在哪个目录中?

    • 保存在手机内存中,文件存储路径为:/data/data/packagename/shared_prefs
    • 可以用文件流来读取

    4.如何在sharedPreferences文件中存取可序列化的对象?

    • 基础类一定要实现Serializable接口,这个表示该类是可序列化的。
    • 然后需要将可序列化类编码成base64,这里需要和ByteArrayOutputStream+ObjectOutputStream来配合。

    5.如何通过PreferenceActivity类实现一个设置界面?

    • 最外层标签为:<PreferenceScreen>
    • <PreferenceCategory>标签表示一个设置分类
    • <CheckBoxPreference>标签表示复选框
    • <EditTextPreference>标签对应编辑框
    • <ListPreference>对应ListView
    • 使用addPreferencesFromResource(R.xml.preference_setting)来装载文件
    • 在onCreateView中设置<preference>标签的item点击事件

    6.Android SDK支持哪些获取文件输入输出流的方式?

    • 法1:直接创建FileInputStream+FileOutputStream
    • 法2:使用Context.openFileOutput+Context.openFileInput

    7.请写出解析JSON格式文档的JAVA代码?

    • 有一个json字符串:String json="...";
    • 如果是数组就封装成数组:JSONArray jsonArray=new JSONArray(json);
    • 如果是对象就封装成对象:JSONObject jsonObject=new JSONObject(字符串);
    • 将对象转换成string: String.valueOf(jsonObject.get("字符串"));
  • 相关阅读:
    【Postgresql】set up
    【LSTM】Understanding-LSTMs
    【CTR】各公司方法
    【DL】stanford--cs20si--tensorflow
    Redis数据库入门教程
    用.htaccess文件实现URL重写
    php中urldecode()和urlencode()
    php中序列化与反序列化
    网站整合Ucenter详细流程
    ucenter 整合外部网站,实现登录等操作
  • 原文地址:https://www.cnblogs.com/Jason-Jan/p/8545562.html
Copyright © 2020-2023  润新知