1

Stringbuilder を使用して文字列に追加しようとしています。残念ながら、特定の数の文字の後、Strinbuilder はもう追加しません。

この簡単なコードを試しました:

    StringBuilder sb = new StringBuilder();
    for(int i = 0;i<=9999;i++){
        sb.append("c");
    }

LogCat でログを記録し、追加された「c」を数えると (9999 のはずです)、たったの 4069 です!

AndroidエミュレータでEclipseを使用しています。私が知る限り、関連する例外はスローされません。

前もって感謝します!

4

1 に答える 1

0

logcat メッセージの最大長は 4k (4096 バイト - 多少のオーバーヘッド) をわずかに下回るため、cs をログに記録し、切り捨てられた logcat メッセージからそれらを数えているようです。

#define LOGGER_ENTRY_MAX_LEN        (4*1024)
#define LOGGER_ENTRY_MAX_PAYLOAD (LOGGER_ENTRY_MAX_LEN - sizeof(struct logger_entry))
于 2013-06-02T20:16:04.227 に答える