我想从我的应用程序的sqlite数据库中读取数据,该数据库安装在真实设备上的Windows计算机中。我想用USB线或任何其他方法连接两者,但不要上网 这有可能吗?是的在调试模式下,我可以在eclipse的LogCat中看到数据,但我如何访问这些数据? 你能指点我一些可以帮助我解决这个问题的文献吗?
答案 0 :(得分:0)
在您的主要活动中添加此代码,然后重新启动您的活动。确保已调用此代码并设置正确的SD卡路径。在Windows上安装sqlite manager工具并查看您的数据。
try
{
String inFileName = "//data/data/com.needzapp.debug/databases/your_db_name";
File dbFile = new File(inFileName);
FileInputStream fis = new FileInputStream(dbFile);
String outFileName = Environment.getExternalStorageDirectory()+"/NeedzApp_DB";
//Open the empty db as the output stream
OutputStream output = new FileOutputStream(outFileName);
//transfer bytes from the inputfile to the outputfile
byte[] buffer = new byte[1024];
int length;
while ((length = fis.read(buffer))>0){
output.write(buffer, 0, length);
}
//Close the streams
output.flush();
output.close();
fis.close();
}
catch (FileNotFoundException e)
{
Timber.e("File Not found ", e.toString());
}
catch (NullPointerException e)
{
Timber.e("NUll pointer" , e.toString());
}
catch (Exception e)
{
System.out.println("exception on exporting DB");
}