微信扫一扫

028-83195727 , 15928970361
business@forhy.com

Android中logcat长度超出上限处理方法

log打印,log太长,log超过上限2016-11-17

转载请标明出处:http://blog.csdn.net/donkor_/article/details/53196049

前言:今天在开发过程中,获取网络数据返回的json字符串,使用Log打印出日志信息,发现输出的日志信息超出了上限,没有打印完整。

经查发现,Android系统的单条日志打印长度是有限的,长度是固定的4*1024个字符长度。

所以这里我们可以对输出的信息进行分段处理,以保证输出足够的长度。

简单的实现,代码如下:

import android.util.Log;

/**
 * 打印日志的工具类
 *
 * @author donkor
 */
public class LogUtil {
    //规定每段显示的长度
    private static int LOG_MAXLENGTH = 2000;

    public static void e(String TAG, String msg) {
            int strLength = msg.length();
            int start = 0;
            int end = LOG_MAXLENGTH;
            for (int i = 0; i < 100; i++) {
                //剩下的文本还是大于规定长度则继续重复截取并输出
                if (strLength > end) {
                    Log.e(TAG + i, msg.substring(start, end));
                    start = end;
                    end = end + LOG_MAXLENGTH;
                } else {
                    Log.e(TAG, msg.substring(start, strLength));
                    break;
                }
        }
    }
}

结尾

希望这篇文章有帮助到您。欢迎关注我的微信公众号,扫一扫下方二维码,即可关注。有什么问题也可以直接留言,看到之后我会及时回复您。