How can I see long texts/msg in logcat?

后端 未结 5 1275
谎友^
谎友^ 2021-02-05 07:44

Since we are using logcat as a console for android. There are cases when the the output text/msg is kinda big and I can\'t see the complete output. The log cat shows only the st

5条回答
  •  终归单人心
    2021-02-05 08:14

    This is the way I solved the problem. Hope it helps.

    The important method for using it inside your code is splitAndLog.

    public class Utils {
        /**
         * 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   Chunks of strings
         */
        public static ArrayList splitString(String text, int sliceSize) {
            ArrayList textList = new ArrayList();
            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   
         */
        public static ArrayList splitString(String text) {
            return splitString(text, 80);
        }
    
        /**
         * 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 messageList = Utils.splitString(text);
            for (String message : messageList) {
                Log.d(tag, message);
            }
        }
    }
    

提交回复
热议问题