UGA Boxxx

つぶやきの延長のつもりで、知ったこと思ったこと書いてます

【GAE】App Engineのdefault charset

App EngineにデプロイしているJavaのアプリケーションのログをみていると日本語が文字化けしている

おそらくApp Engineのdefault charsetが原因だと思うので調べてみた

結論おそらくUS-ASCII?

調査した結果、Java7ランタイムで使用されていたエンコードはUS-ASCIIであったが、Java8ランタイムになってUTF-8に変更されたとドキュメントに書いてあったのだが、、

Java 8 では、App Engine のデフォルトのファイルのエンコードJava 7 で使用されていた US-ASCII から UTF-8 に変更されています。

https://cloud.google.com/appengine/docs/standard/java/migrating-to-java8?hl=ja#changing_the_default_file_encoding

今回のJavaアプリケーションはJava8で作っているのでUTF-8のはずなのだがよくわからない

3年前だがStackOverflowで同じようなことを質問していている人がいて、そこの回答ではデフォルトCharsetに依存しないようにアプリケーションをつくれとあるので、とりあえずそう修正するのがよさそう stackoverflow.com