dzwillpower
7/25/2016 - 2:09 AM

android log分割类 默认的log 打印不完全所有的log

android log分割类 默认的log 打印不完全所有的log

package com.ipanel.join.cq.vod.utils;

import java.util.ArrayList;

import android.util.Log;

public class LogcatUtils {
	/**
	 * Divides a string into chunks of a given character size.
	 * 
	 * @param text
	 *            String text to be sliced
	 * @param sliceSize
	 *            int Number of characters
	 * @return ArrayList<String> Chunks of strings
	 */
	public static ArrayList<String> splitString(String text, int sliceSize) {
		ArrayList<String> textList = new ArrayList<String>();
		String aux;
		int left = -1, right = 0;
		int charsLeft = text.length();
		while (charsLeft != 0) {
			left = right;
			if (charsLeft >= sliceSize) {
				right += sliceSize;
				charsLeft -= sliceSize;
			} else {
				right = text.length();
				aux = text.substring(left, right);
				charsLeft = 0;
			}
			aux = text.substring(left, right);
			textList.add(aux);
		}
		return textList;
	}

	/**
	 * Divides a string into chunks.
	 * 
	 * @param text
	 *            String text to be sliced
	 * @return ArrayList<String>
	 */
	public static ArrayList<String> splitString(String text) {
		return splitString(text, 2000);
	}

	/**
	 * Divides the string into chunks for displaying them into the Eclipse's
	 * LogCat.
	 * 
	 * @param text
	 *            The text to be split and shown in LogCat
	 * @param tag
	 *            The tag in which it will be shown.
	 */
	public static void splitAndLog(String tag, String text) {
		ArrayList<String> messageList = LogcatUtils.splitString(text);
		for (String message : messageList) {
			Log.d(tag, message);
		}
	}
}