在手机的存储区中,有一个文件“ MyFile.sql ”。该文件有 200条记录。我应该做的是将这200条记录导入到应用程序中。
首先,我只是初始化
llUpdate.setOnClickListener { UpgradeDB(txtUpdate!!).execute("", "", "") }
在那之后,我启动了一个方法,我不知道为什么它找到了文件并已经读取,但是它没有导入到应用程序中。这是因为我写了return = null
,所以它没有导入到应用程序中吗?
override fun doInBackground(vararg params: String): String? {
val filename = "MyFile.sql"
val sdcard = Environment.getExternalStorageDirectory()
val file = File(sdcard, filename)
if (!file.exists()) isCancelled
var dbHelper: MyDBHelper? = null
dbHelper?.writableDatabase.use { db ->
var intTotalLine = 0
var intLine = 1
BufferedReader(FileReader(file)).useLines { _ -> intTotalLine++ }
BufferedReader(FileReader(file)).use { r ->
r.lineSequence().forEach {
if (it.isNotEmpty()) {
db?.execSQL(it)
publishProgress(String.format("Updating %s/%s records", intLine, intTotalLine))
intLine++
}
}
}
}
return null
}
你们能帮我检查一下错误在哪里吗?预先感谢。