我正在尝试阅读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文件夹结构
我将资产文件夹放在错误的位置,还是我在做其他任何错误?
答案 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"/>
使用与问题相同的方法和结构