在Android中将SQLite数据库导出到XML文件


问题内容

我知道这是可能的,但我不确定从哪里开始。有人能做到吗?

谢谢。


问题答案:

DataXmlExporter本文中描述的类会将SQL lite DB导出到XML文件。

http://www.screaming-penguin.com/node/7749

完整的示例在此SVN存储库中可用。在ManageData类调用出口。

http://totsp.com/svn/repo/AndroidExamples/trunk/

您将需要创建一个暴露数据库的应用程序类,并在AndroidManifest.xml文件中作为应用程序名称引用。然后使用该DB作为DataXmlExporter构造函数的参数。

这是我使用的应用程序类。您应该已经有一个DatabaseHelper扩展了的类(可能未命名)SQLiteOpenHelper

package com.billybobbain.android.someapp;
import android.app.Application;
import android.util.Log;

public class MyApplication extends Application {

   public static final String APP_NAME = "SomeApp";

   private DatabaseHelper dataHelper;

   @Override
   public void onCreate() {
      super.onCreate();
      Log.d(APP_NAME, "APPLICATION onCreate");
      this.dataHelper = new DatabaseHelper(this);      
   }

   @Override
   public void onTerminate() {
      Log.d(APP_NAME, "APPLICATION onTerminate");      
      super.onTerminate();      
   }

   public DatabaseHelper getDataHelper() {
      return this.dataHelper;
   }

   public void setDataHelper(DatabaseHelper dataHelper) {
      this.dataHelper = dataHelper;
   }
}