少し質問があります。 byte array
をどうすればいいですか?String
という名前で保存してください。私はyバイト配列が大きすぎる場合、どうすればそれからいくつかの文字列を作成できますか?一例として、私は最初にバイトの50ビット/文字だけを取得し、次の50バイトなどはどのようなアイデアですか?Androidの文字列をバイトに変換する[] - バイトをバイト[]で返す
3
A
答えて
6
String.getBytes()
メソッドを使用してください。
0
バイト配列をBase64文字列に変換してから分割します。その後、マージフェーズでその文字列をマージし、結果をBase64に変換します。 それとも、メモリの制限がある場合は、最初にバイト配列を使用して文字列を作成する必要がある場合、あなたはすべてのバイトのサイズより数倍多くのメモリを必要とするいくつかのバイト配列
byte[] origBytes = ...;
//a loop for splitting bytes
byte[] splittedBytes1 = ...;
byte[] splittedBytes2 = ...;
...
String strbytes1 = Base64.encodeBytes(splittedBytes1);
String strbytes2 = Base64.encodeBytes(splittedBytes2);
...
+0
'Base64.encodeBytes(String)'メソッドは表示されません。何か不足していますか? –
1
に分割します。
文字列は文字配列で、文字のサイズは2バイトです。
第2に、Stringは不変オブジェクトであるため、既存の配列を使用して文字列を作成することは不可能です。したがって、文字配列の2番目のコピーが作成されます。メモリ消費が重要な場合は、String
の代わりにCharSequence
を使用することを検討してください。
最後に、例えば、StringBuilder
またはStringWriter
を使用します。
String writer = new StringWriter();
writer.write(new String(byteArrayChunk1, "UTF-8"));
...
writer.write(new String(byteArrayChunkN, "UTF-8"));
String resultString = writer.toString();
UPDATE: 別のオプション、はるかに良く、私は思う:
ByteArrayOutputStream baos = new ByteArrayOutputStream();
baos.write(byteArrayChunk1);
baos.write(byteArrayChunkN);
String resultString = baos.toString("UTF-8");
関連する問題
- 1. 文字列[]〜バイト[] 2文字をバイトに変換しますか?
- 2. バイト形式の文字列をバイト配列に変換するandroid
- 3. 文字列表現バイトをバイトに変換する方法は?
- 4. バイトを含む文字列をバイト文字列に変換する
- 5. バイト配列をBase64に変換するandroidの文字列
- 6. バイト配列を文字列に変換してバイト配列に戻す
- 7. 1バイト文字列(半角)から2バイト(全角)に変換
- 8. ユニコード文字列をバイト文字列に変換する
- 9. .NETで3バイトのUTF-8文字列置換(3バイトUTF-8を文字列または文字に変換)
- 10. C#の文字列、バイト変換
- 11. 文字列からバイトへの変換
- 12. バイトから文字列への変換
- 13. Javaの文字列をバイト配列に変換するには?
- 14. バイトの配列をペルシア語の文字列に変換する
- 15. PNG圧縮バイト配列をBMPバイト配列に変換する
- 16. バイトからバイトへの文字列。値が範囲外です - 変換エラーjava
- 17. 文字列をエンコーディングなしのバイト配列に変換する
- 18. バイト配列をPHPの文字列に変換する
- 19. 文字列/テキストをタイプ・スクリプトのバイト配列に変換する
- 20. KBの文字列をバイト列に変換するPython
- 21. バイト配列をC#の文字列に変換する
- 22. ロボットフレームワークのバイト配列を文字列に変換する
- 23. バイト配列を文字列に変換するには?
- 24. バイト配列を文字列に変換するには?
- 25. chunckバイト配列をbase64文字列に変換するには?
- 26. 1バイト、2バイト、3バイト文字
- 27. バイト>文字列>バイト>ファイルVB
- 28. 文字列をバイト配列に変換する
- 29. C++ UTFバイト配列を文字列に変換する
- 30. 文字列をバイト配列に変換する
しかし、私が何をすべきかの私のバイト[ ]私はそれから文字列を作成しようとしているときに私にoutofmemory例外をスローされていますか? –
@Bombastic Use String.substring(beginIndex、endIndex).getBytes() – adatapost
実際には、文字列の特定の部分をbyte []に変換するためのものだと思います。私はそれの反対が必要です。 bye []の最初の200文字を取得し、文字列としてコンサートします。 –