cordova中的资产文件夹结构

时间:2018-01-19 08:05:08

标签: android cordova

我正在尝试阅读cordova中的文本文件。为此,我创建了一个资产文件夹(请参阅 cordova文件夹结构图像)并将我的文本文件放入其中,但我收到错误java.io.FileNotFoundException: json.txt

注意: 当我在Android原生中尝试它时,我能够读取文件...

代码

String yourData = LoadData("json.txt");
public String LoadData(String inFile) {
    String tContents = "";

    try {
        InputStream stream = context.getAssets().open(inFile);

        int size = stream.available();
        byte[] buffer = new byte[size];
        stream.read(buffer);
        stream.close();
        tContents = new String(buffer);
    } catch (IOException e) {
        e.printStackTrace();
        Log.e("catch", e + "");
    }

    return tContents;

}

Cordova文件夹结构

enter image description here

我将资产文件夹放在错误的位置,还是我在做其他任何错误?

2 个答案:

答案 0 :(得分:1)

当我知道Cordova访问您的文件作为相对路径时。并且它将假设您正在使用www目录。

因此,如果您想访问您的文件,可以在Cordova插件中执行以下操作 -

window.resolveLocalFileSystemURI("file:///android_asset/www/json.txt", onResolveSuccess, onFail);

你的文件路径会变成这样 -

<强> file:///android_asset/www/json.txt"

答案 1 :(得分:1)

实际问题是,plugin.xml中没有提到资产文件夹。提到它之后一切正常

plugin.xml条目

<source-file src="json.txt" target-dir="assets"/>

使用与问题相同的方法和结构