如何在Android上的日志中输出所有内容而不截断?

时间:2015-02-11 19:07:42

标签: android

我想将大量数据输出到我在Android上的日志...但它会截断数据。

如何阻止它截断我的日志?

1 个答案:

答案 0 :(得分:2)

Logcat会在4000个字符后截断数据,因此您可以将其写成块:

public static final int LOGCAT_MAX_LINE_LIMIT = 4000;

public static final String TAG = "log_tag";

private void showLog(String message) {
        if (message.length() > LOGCAT_MAX_LINE_LIMIT) {
            int chunkCount = message.length() / LOGCAT_MAX_LINE_LIMIT;
            for (int i = 0; i <= chunkCount; i++) {
                int max = LOGCAT_MAX_LINE_LIMIT * (i + 1);
                if (max >= message.length()) {
                    Log.d(TAG, message.substring(LOGCAT_MAX_LINE_LIMIT * i));
                } else {
                    Log.d(TAG, message.substring(LOGCAT_MAX_LINE_LIMIT * i, max));
                }
            }
        } else {
            Log.d(TAG, message);
        }
    }