javaでは、次のコードを使用してバイト配列を文字列に変換できます。バイト配列をJavaの文字列をサポートする文字列に変換するアルゴリズム
new String(bytes, "UTF-8");
この方法では、900 KBを超えるファイルに問題があります。私の場合は
私は、このファイルを取得したいWebServiceがアンドロイドにファイル
WebService: File-> Base64-> encrypted string
を送るあります
Android: encrypted string-> decrypted string -> Base64 -> file
私はラインに新しい文字列(バイト単位で復号化に問題を抱えています、 " UTF-8 ")。 900 MBを超えるファイルの場合
このメソッドを実装します。誰も私にこのメソッドのソースコードを教えてもらえますか?
文字セットを無視すると、バイト配列を文字列に変換するのは簡単です。
for (int i = 0; i < bytes.length; i++) {
myString += (char) byteArray[i];
}
文字セットが心配です。 誰かが私を助けることができますか?
編集:
私は、次のコードを書いた:
Charset charsetInput = Charset.forName("UTF-8");
CharsetDecoder decoder = charsetInput.newDecoder();
CharBuffer cbuf = decoder.decode(ByteBuffer.wrap(bytes));
String result = cbuf.toString();
をしかし、何も変わっていません。 3行目のアプリケーションが予期せず停止します。
Android +(文字列> 900 MB).... hmm .. – aioobe
webserviceからBase64に変換されたバイナリファイルを含む暗号化されたファイルを受け取ります。 – breceivemail
アプリケーション内で900 MBのバイト配列をロードするにはどうすればいいですか? –