Jenaでいくつかの RDF ファイルを生成しています。アプリケーション全体が utf-8 テキストで動作します。ソースコードもutf-8で保存されています。
英語以外の文字を含む文字列をコンソールに出力すると、正しい形式が得られますEst un lieu généralement officielle assis...
。
次に、RDF ライターを使用してファイルを出力します。
Model m = loadMyModelWithMultipleLanguages()
log.info( getSomeStringFromModel(m) ) // log4j, correct output
RDFWriter w = m.getWriter( "RDF/XML" ) // default enc: utf-8
w.setProperty("showXmlDeclaration","true") // optional
OutputStream out = new FileOutputStream(pathToFile)
w.write( m, out, "http://someurl.org/base/" )
// file contains garbled text
RDF ファイルは次で始まります: <?xml version="1.0"?>
. utf-8 を追加しても何も変わりません。
デフォルトでは、テキストは utf-8 にエンコードされます。生成された RDF ファイルは正常に検証されますが、任意のエディター/ビジュアライザー (vim、Firefox など) で開くと、英語以外のテキストがすべて台無しになります:Est un lieu g√©n√©ralement officielle assis ...
またはEst un lieu g\u221A\u00A9n\u221A\u00A9ralement officielle assis...
. (いずれにせよ、これはユーザーの観点からは明らかに受け入れられません)。Jena がサポートする出力形式 (RDF、NT など) でも同じ問題が発生します。
これに対する論理的な説明は本当に見つかりません。公式ドキュメントはこの問題に対処していないようです。
それを理解するために実行できるヒントやテストはありますか?