为什么以下代码会导致我的Android应用崩溃?
new String("é".getBytes(StandardCharsets.UTF_8), "UTF8")
或只是
new String("é".getBytes())
怎么做?
一些信息:
错误:
08-18 20:30:04.877 18914-18924 / com.nextwebart.senego W / google-breakpad:### ### ### ### ### ### ### ### ### ### ### ### ### 08-18 20:30:04.877 18914-18924 / com.nextwebart.senego W / google-breakpad:Chrome构建指纹: 08-18 20:30:04.877 18914-18924 / com.nextwebart.senego W / google-breakpad:4.2.8 08-18 20:30:04.877 18914-18924 / com.nextwebart.senego W / google-breakpad:70 08-18 20:30:04.877 18914-18924 / com.nextwebart.senego W / google-breakpad:### ### ### ### ### ### ### ### ### ### ### ### ### 08-18 20:30:04.877 18914-18924 / com.nextwebart.senego A / libc:致命信号11(SIGSEGV),代码1,故障地址0x5 in tid 18924(JDWP)
在此处找到相关问题:Java Strings Character Encoding - For French - Dutch Locales
-------编辑:
仅在我的Android Studio调试器中发生!所以当我用它作为手表或“评估表达”时。但是当我在代码中执行此操作然后Log.d(...)它工作正常! Android Studio 2.1.3
我为此创建了一个Android Studio问题:https://code.google.com/p/android/issues/detail?id=220366
答案 0 :(得分:0)
new String("é".getBytes())
它对我来说非常合适。我用android min API测试了它。 请检查,任何其他问题都可能发生。