前言:
今天在开发过程中,获取网络数据返回的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;
}
}
}
}
关于我:
- Android开发交流QQ群:537891203
- 邮箱:donkor@yeah.net