使用UCanAccess的MS Access '97 DB的字符集

问题描述 投票:0回答:1

嘿,我正在使用ucanaccess-5.0.0读取数据库。该数据库可能不是Access 2000,因为它不是UTF-8。似乎我必须设置一个字符集。我尝试使用URL中的charset参数进行此操作:

jdbc:ucanaccess://${databaseFile.absolutePath};memory=false;charSet=Cp1250

这似乎被忽略了,因为我仍然没有从数据库中退出德国的变音符号。

我该怎么办?

ms-access kotlin ucanaccess
1个回答
0
投票

有效的解决方案:

class DatabaseOpener : JackcessOpenerInterface {
  override fun open(fl: File, pwd: String?): Database {
    return DatabaseBuilder.open(fl).apply {
      this.charset = charset("Cp1252")
    }
  }
}

// URL
"jdbc:ucanaccess://<path-to-mdb-file>;memory=false;jackcessOpener=${SecondHandlingDatabaseOpener::class.qualifiedName!!}"

© www.soinside.com 2019 - 2024. All rights reserved.