Android 读取Properties

最近在通过chrome浏览器下载apk时经常出现apk的mimetype值错误导致文件无法识别,经测试其它文件类型也会偶尔出现错误;
解决方案是在插入数据库之前根据文件后缀判断mimetype是否正确,然后修改。
后缀对应的mimetype值我保存在了res/raw/mimetypes.properties文件中,每次下载时都会读取并对比相应的值。
下面是获取键值的方法:
    /**
     * 获取键值对
     */
    public void initProperties() {
        List list = new ArrayList();
        try {
            Properties properties = getProperties();
            for (Object key :
                    //获取键的集合
                    properties.keySet()) {
                list.add(key.toString()
                        + " = "
                        //通过键获取值
                        + properties.getProperty(key.toString()));
            }
            //list转字符串数组
            values = (String[]) list.toArray(new String[list.size()]);
        } catch (Exception e) {
            e.printStackTrace();
        }
    }

    /**
     * 读取raw中的properties
     * @return
     */
    public Properties getProperties() {
        Properties properties = new Properties();
        try {
            InputStream is = getResources().openRawResource(R.raw.mimetypes);
            properties.load(is);
            return properties;
        } catch (Exception e) {
            e.printStackTrace();
        }
        return null;
    }

Demo下载地址 http://download.csdn.net/detail/qq_25697993/9701110

发布了11 篇原创文章 · 获赞 4 · 访问量 5万+
展开阅读全文

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 大白 设计师: CSDN官方博客

分享到微信朋友圈

×

扫一扫,手机浏览