今天使用android 解析json 文件的时候,一直报个错误:
01-11 05:10:15.727: WARN/System.err(10896):
java.lang.IllegalArgumentException:
File //mnt//sdcard//json.txt contains a path separator:
错误开始前的代码:
try{
FileInputStream fis = this.openFileInput("/mnt/sdcard/json.txt");
//文件中没有数据
if (fis.available() == 0) {
return;
}
byte[] readBytes = new byte[fis.available()];
while (fis.read(readBytes) != -1) {
}
}catch(Exception e){
e.printStackTrace();
}
}
调试后的:
File file = new File("/mnt/sdcard/json.txt");
if (file.exists()) {
FileInputStream fis;
try {
fis = new FileInputStream(file);
fis.available();
byte[] readBytes = new byte[fis.available()];
while (fis.read(readBytes) != -1) {
}
String userData = new String(readBytes);
show.setText(userData);
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
注意:
1.FileInputStream 与 openFileInput
2.注意加权限
01-11 05:10:15.727: WARN/System.err(10896):
java.lang.IllegalArgumentException:
File //mnt//sdcard//json.txt contains a path separator:
错误开始前的代码:
try{
FileInputStream fis = this.openFileInput("/mnt/sdcard/json.txt");
//文件中没有数据
if (fis.available() == 0) {
return;
}
byte[] readBytes = new byte[fis.available()];
while (fis.read(readBytes) != -1) {
}
}catch(Exception e){
e.printStackTrace();
}
}
调试后的:
File file = new File("/mnt/sdcard/json.txt");
if (file.exists()) {
FileInputStream fis;
try {
fis = new FileInputStream(file);
fis.available();
byte[] readBytes = new byte[fis.available()];
while (fis.read(readBytes) != -1) {
}
String userData = new String(readBytes);
show.setText(userData);
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
注意:
1.FileInputStream 与 openFileInput
2.注意加权限
解决Android解析JSON文件时报错问题
本文讨论了在Android环境中解析JSON文件时遇到的错误处理问题,详细介绍了错误原因及解决方案,包括从使用FileInputStream到File类的转换,以及在读取文件时避免路径分隔符导致的问题。

被折叠的 条评论
为什么被折叠?



