我想从csv文件中读取数据并将其存储到数据库中。这就是我保存csv文件的方式(这样可以正常工作 - 只是为了显示我计划用CSVreader读取文件的位置和方式):
synchronized public void readFromUrl(String url, String outputFile, Context context) throws FileNotFoundException {
URL downloadLink = null;
try {
downloadLink = new URL(url);
} catch (MalformedURLException e2) {
// TODO Auto-generated catch block
e2.printStackTrace();
}
BufferedReader in = null;
try {
in = new BufferedReader(
new InputStreamReader(downloadLink.openStream(), "UTF8"));
} catch (IOException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
FileOutputStream fstream = context.openFileOutput(outputFile,Context.MODE_PRIVATE);
Writer out = new OutputStreamWriter(fstream);
Log.d(TAG, "BufferedReader "+in);
String inputLine = null;
try {
while ((inputLine = in.readLine()) != null){
out.write(inputLine+"\n");
//logger.debug("DOWNLOADED: "+inputLine);
}
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
try {
fstream.close();
out.close();
in.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
到目前为止,我的代码用于读取csv文件:
public void readInCSVFile(String filename, Context context) throws IOException {
IDbHelper dbHelper = new DbHelper(); ;
CSVReader products = null;
products = new CSVReader(new InputStreamReader(context.getAssets().open(filename)));
我收到NoClassDefFoundError异常。
我的android项目的Referenced库中有opencsv.jar。
提前感谢您的帮助。
答案 0 :(得分:2)
您的项目是否在Eclipse IDE中?如果是,那么看看是否在“项目属性 - > Java构建路径 - >库”和中设置了lib(opencsv.jar),它在选项卡中被检查:“订单和出口“也是。在“Order and Export”下,将lib移动到列表顶部。 然后清理并重建。
PS:如果这没有帮助,那么请提供错误的完整堆栈跟踪。