我需要从文本文件中读取数据并将其保存到数据库中。
我已编写此代码,但它给了我一个运行时错误:
FATAL EXCEPTION: main
java.lang.ArrayIndexOutOfBoundsException: length=5; index=5
我的代码是:
public void GetFrom_Text() {
String []message=null;
BufferedReader br=null;
String name1, faculty1, deparment1, officeNumber1, email1, phone1;
long e;
try{
String sCurrentLine = null;
br =new BufferedReader(new InputStreamReader(getAssets().open("ab.txt")));
while((sCurrentLine = br.readLine()) != null) {
if(sCurrentLine != null )
message=sCurrentLine.split(",");
faculty1 = message[0];
deparment1 = message[1];
name1 = message[2];
officeNumber1 = message[3];
phone1 = message[4];
email1 = message[5];
e = db2.insertRecord(faculty1, deparment1, name1, officeNumber1, phone1, email1, email1);
}
}
catch (IOException e1) {
e1.printStackTrace();
} finally {
try {
if (br !=null)br.close();
} catch (IOException ex) {
ex.printStackTrace();
}
}
}
文本文件中的行包含以下数据:
it,csa,Mohammad Bsoul,it239,4573,mbsoul @ hu.edu.jo
我需要拆分每条记录并将其保存到数据库中 我需要查看数据是否成功保存到datbase
答案 0 :(得分:1)
文本文件的其中一行不会被拆分为6个元素。这导致异常发生在这一行......
email1=message[5];
...因为没有第5个索引。检查文本文件并确保数据正确无误。
答案 1 :(得分:1)
在拆分之前尝试设置Log.d("Line from file", sCurrentLine)
,您可以在LogCat中看到要拆分的字符串。我认为你的字符串错过最后一次“,”
答案 2 :(得分:1)
少数事情: