Android:加载位于app / src / main /中的文本文件

时间:2014-04-01 13:57:20

标签: android text-files

我尝试使用某些代码将基本更改日志从文本文件加载到警报对话框中。唯一的问题是我无法获取代码来查找更改日志文件的位置。文件" changelog"位于app / src / main /。以下是我的代码示例。

private void displayChangelogDialog() {
    Context context = this;
    try {
        new AlertDialog.Builder(this)
                .setTitle("Changelog")
                .setMessage(readFile(getApplicationContext().getFilesDir().getAbsolutePath() + "/app/src/main/changelog"))
                .setPositiveButton(android.R.string.yes, new DialogInterface.OnClickListener() {
                    public void onClick(DialogInterface dialog, int which) {
                        // do nothing
                    }
                })
                .show();
    } catch (IOException e) {
        Toast.makeText(MainActivity.this, "Error", Toast.LENGTH_SHORT).show();
        e.printStackTrace();
    }
}

我对getFilesDir()或getAbsolutePath()不太熟悉,所以我想如果有人能帮我弄清楚我做错了什么,这将是一次很好的学习经历。我确定问题存在于我输入的路径中,但此刻我有点难过。提前谢谢。

1 个答案:

答案 0 :(得分:1)

getFilesDir文档:

返回文件系统上存储用openFileOutput(String, int)创建的文件的目录的绝对路径。

通常,openFileOutput访问/data/data,这与您的应用程序安装路径完全不同。 如果要访问文件,请将其放在assets文件夹中,检查与资产相关的功能(请参阅AssetManaget