android - 获取android源码包中的子文件夹名称和文件名列表

标签 android xml sqlite

我正在开发一个 Android 应用程序,它存储 sql 文件以更新 sqlite 数据库。当用户按下某个按钮时,该 sql 脚本将运行。这是我放置 sql 文件的地方

Where i put my sql files

到目前为止,我一直在使用这个解决方案来运行我的脚本: 首先,将我的更新映射到资源作为 update.xml

<resources>    

    <string name="update_list">
        v2_9_11
    </string>

    <string-array name="v2_9_11">
        <item>1_AlterTable_wapactivity</item>
    </string-array>

</resources>

并使用此方法获取文件内的 sql 脚本:

private void runScript(String version_name){
        try{
            String[] sql_list = mGap.getResources().getStringArray(getArrayIdentifier(mGap, version_name));
            for (String sql : sql_list) {
                InputStream in =  getClass().getResourceAsStream("/com/ods/scm/script/update/"+version_name+"/"+sql+".sql");
                Reader fr = new InputStreamReader(in, "utf-8");
                BufferedReader br = new BufferedReader(fr);
                String s="";
                String baris;
                while((baris=br.readLine())!=null){
                    s+=baris;
                 }
                mDbHelper.executeStatement(s);
            }
            insertUpdate(version_name);
        }
        catch(Exception e){
            System.out.println(e.getMessage());
        }
    }

我从 update.xml 中获取了 String version_name 和 String[ ] sql_list 文件名。 问题是,我想获取 version_name (在本例中为 v2_9_11 作为文件夹 update 中的子文件夹名称)和 sql 文件名(在本例中为 1_AlterTable_wapactivity.sql ),而不将其映射到 update.xml 中。有人可以帮助我吗?

编辑
或者任何人都可以指导我如何在构建应用程序时自动将其映射到 update.xml ?

最佳答案

我建议您将.sql文件放在assets文件夹中。通过这样做,您可以自由地使用文件 IO API 操作您的文件。

关于android - 获取android源码包中的子文件夹名称和文件名列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28206507/

相关文章:

java - 如何调试org.xml.sax.SAXParseException; schema_reference.4?

c# - 在 Windows Phone 8 中,SQLite 可以工作但不会将数据库文件写入 IsoStore

sqlite - 如何使用instr()函数创建基于表达式的索引?

android - 在 Activity android中绘制图像

Java 扩展 vs 对象引用?

java - 停止窃取 ListView 焦点的按钮

ios - Cordova 2.7 - iOS 插件 SQLite exec 已弃用

android - Android 版谷歌分析 : Don't see Demographics and Interests report

java - FileProvider.getUriForFile 正在抛出 StringIndexOutOfBoundsException

java - 向 RecyclerView 项目添加涟漪效果时“可能过度绘制”