1

Paradox ファイル (*.db) を読み取る Java アプリケーション (JDK 1.7 を使用) があります。ラテン文字でうまく機能します。このアプリケーションでキリル文字を正しく表示しようとしていますが、常に読みにくい結果が得られます。

データベースに接続する元のコード:

Class.forName(DB_DRIVER);
String dbUrl = "jdbc:odbc:Driver={Microsoft Paradox Driver (*.db )};DBQ=" + workingDb + ";READONLY=true";
return DriverManager.getConnection(dbUrl);

接続の取得中に追加のプロパティを渡そうとしました:

java.util.Properties prop = new java.util.Properties();
prop.put("charSet", "windows-1251");            
return DriverManager.getConnection(dbUrl, prop);

しかし、それは何もしませんでした。文字セットを「UTF-8」として指定しようとしましたが、うまくいきませんでした。

ResultSet を読み取る元のコードは次のようになります。

String title = rs.getString(7)

しかし、タイトルが読めません。また、rs.getBytes() を使用して結果を新しい文字列に渡し、コンストラクターでエンコーディングを指定しようとしましたが、それもうまくいきませんでした。

何が欠けているのか、誰にも分かりますか。

4

1 に答える 1

0

使用している Paradox テーブルのバージョンはわかりません。ver 4.5 まで paradox は DOS ベースのプログラムでした。その後、Paradox for Windows になりました。テーブルは似ていましたが、いくつかの拡張機能がありました。

ただし、初期の dos バージョンにまでさかのぼって、Paradox はキリル文字やその他の文字セットをサポートし、その後はさらに多くの文字セットをサポートしていました。これらは、当時の技術である「コード ページ」を使用して解釈されました。それらはまだASCIIテーブルでした-おそらくユニコードの前。後はわかりません。

だから、アスキーコードページを実装するのがアイデアだと思います。もちろん、これはデータが最初に入力された方法であるかどうかに依存します。これらは、拡張 ASCII 文字、特に「国際」文字の 128 ~ 168 を使用していました。

于 2011-12-27T18:59:12.000 に答える