現在、プロジェクトの 1 つを Objective-C から Java に移植しています。
バイト データは、文字列にエンコードされたサーバーから送信され、バイト配列に変換しています。
[目標C]:
NSString * imageString = @"abcde......"; //quite a long string
NSData * imageData = [imageString dataUsingEncoding:NSUnicodeStringEncoding];
constant Byte * imageBytes = [imageData bytes];
今、私はAndroidで同じことをしようとしています
[JAVA]:
String imageString = "abcde......"; //quite a long string
byte [] imageBytes = imageString.getData("UTF-16");
ただし、最初と 2 番目のスニペットの imageBytes 配列を比較すると、それらは異なります。これは、Java の場合に使用している UTF-16 エンコーディングに関係していると思います (「Unicode」などのオプションはないと思います)。
これを回避する方法はありますか?