アクセント付きの文字をFreemarkerで印刷しようとしていますが、アクセント付きの文字の代わりに疑問符のみが表示されます。私は、次の文が成立することを、確認しました:Freemarkerエンコーディング - アクセント付き文字の代わりの疑問符
"UTF-8" == Environment.getCurrentEnvironment().getConfiguration().getDefaultEncoding()
私は簡単にアクセント付き文字が正しくテンプレートにそれを与える前に、変数に保持されていることを、見ることができます。
マイFreeMarkerのコンテキストをここで見つけることができます。例えばhttps://gist.github.com/1975239
の代わり:
Jedine?ný ?ivý koncert, kde nejen, ?e usly?íte, ale i uvidíte splynutí metalové kapely s padesáti?lenným orchestrem v?etn?.
感謝を:
Jedinečný živý koncert, kde nejen, že uslyšíte, ale i uvidíte splynutí metalové kapely s padesátičlenným orchestrem včetně.
私は入れません。
私はOutputStreamインスタンスを作成しませんが、これはSpringによって作成されたと思います。デバッグすると、org.apache.catalina.connector.CoyoteWriterが使用されているのがわかりますが、エンコーディングの参照が見つかりません。ありがとう –
カタリナで使用される文字セットは、おそらく 'HttpServletResponse'の" characterEncoding "プロパティに依存します。ですから、あなたのMVCコントローラに 'response.setContentType(" text/html; charset = UTF-8 ");というようなものがあれば、それが解決するかもしれません。しかし、Springでエンコーディングを設定するのは適切な方法ではないかもしれません。 – ddekany
ありがとう! HttpServletResponse.setCharacterEncoding()を使用してトリックを行った! –