如何在android中添加文件的详细信息

时间:2015-02-26 09:17:40

标签: android file metadata

我想在android中添加一些文件的附加信息。例如名称,类型,大小已经与文件相关联,但我想添加另一个属性,如公司及其值。是否可能??

更多说明:我想开发一个应用程序,它将文件作为输入,并添加一些其他属性,如公司:“公司名称”。然后,无论我发送此文件,用户将能够看到此属性其详细信息部分与其他内置属性。

2 个答案:

答案 0 :(得分:0)

答案 1 :(得分:0)

这是我使用的配置阅读器:

public class ConfigReader {
private static ConfigReader instance = new ConfigReader();
private Properties properties;


ConfigReader() {

}   


public void initializeFramework() throws IOException {
    this.properties = loadProperties(Environment.getExternalStorageDirectory() + "/YourApp/Settings.prop");
    }   


public Properties getProperties() {
    return properties;
}

public Properties loadProperties(String path) throws FileNotFoundException, IOException {
    Properties properties = new Properties();
    File propertiescheck = new File (path);
    if (!propertiescheck.exists()){
        createDefaultProperties(path);
    }
    BufferedInputStream stream = new BufferedInputStream(new FileInputStream(path));
    properties.load(stream);        
    return properties;
}



private void createDefaultProperties(String path) throws IOException {
    // TODO Auto-generated method stub
    Properties properties = new Properties();
    File creator = new File(Environment.getExternalStorageDirectory() + "/YourApp/");
    creator.mkdirs();
    FileOutputStream writer = new FileOutputStream(path, true);
    properties.setProperty("size","100");
            properties.setProperty("type","Company");
    properties.store(writer, "These are Default things");
    writer.flush();
    writer.close();
}


public ConfigReader getInstance() {
    return instance;
    }

}

它在/ YourApp /中查找Settings.prop文件并读取值。如果它没有找到文件,它会创建一个自己的文件。我建议你让它创建一个,然后在编辑文件之前首先查看格式。

然后,您可以在其他地方读出读取的属性文件,如下所示:

   ConfigReader configReader = new ConfigReader();
   configReader.getInstance().initializeFramework();
   String size= configReader.getInstance().getProperties().getProperty("size", "50").toString();

请注意,如果未找到或创建属性文件,或者未在属性文件中定义“大小”值,则返回“50”isgetting。如果你需要将大小作为整数,你需要像这样解析它

Integer.parseInt(YourString);

希望这有帮助