首先,如果您能幫助我,我將非常感謝您。從Android上的文件加載.json文件時出現的問題
在我的項目中,我必須在應用程序中上傳文件.json,然後從瀏覽器中取出它。
我處理它從的Manifest.xml與意圖過濾器如下:
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<data android:scheme="file" android:host="*" android:pathPattern=".*\\.json" android:mimeType="*/*" />
</intent-filter>
然後,從MainActivity.java,我構建File對象,並從創建的文件中的字符串結果:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Intent intent = getIntent();
String action = intent.getAction();
Uri uri = intent.getData();
if (action != null){
if (action.compareTo(Intent.ACTION_VIEW) == 0) {
String scheme = intent.getScheme();
String path = intent.getDataString();
if (scheme.compareTo(ContentResolver.SCHEME_FILE) == 0) {
try {
InputStream inputStream = getContentResolver().openInputStream(uri);
System.out.println("InputStream loaded");
} catch (FileNotFoundException e) {
System.out.println("InputStream not loaded");
e.printStackTrace();
}
}
}
}
}
字符串對象的值路徑是文件:///storage/emulated/0/Download/prova.json。
主要問題是,當我嘗試加載文件時,它會拋出一個異常,指出該文件不存在,即使它確實如此。
再次謝謝大家!
始終發佈堆棧跟蹤。 –