如何在logcat中看到长文本/味精?

因为我们使用logcat作为android控制台。 有些情况下,输出文本/味精有点大,我看不到完整的输出。 日志猫只显示它的起始部分。 有没有办法扩展它,让我可以看到完整的味精?

如果你想编写很长的消息来查看logcat ,可能需要在android.util.Log方法中编写自己的包装器,将多个消息分成多行。

这是我解决问题的方法。 希望能帮助到你。

在代码中使用它的重要方法是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<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, 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<String> messageList = Utils.splitString(text); for (String message : messageList) { Log.d(tag, message); } } } 

我从不使用GUI来查看logcat输出,所以我不确定DDMS / Eclipse UI中是否有滚动条。

无论如何,你可以从命令行使用logcat – 有很多选项。

要持续观看活动设备的日志: adb logcat
转储整个日志: adb logcat -d
将整个日志转储到文件: adb logcat -d > log.txt
要过滤和显示特定的日志标记: adb logcat -s MyLogTag

…以及更多!

当然,你可以改变列的宽度,只需要点击并拖动即可。 这真是一个很长的消息的痛苦。 如果我有一个非常长的消息,我通常复制该行并将其粘贴到文本文件中。 Windows中的Ctrl-C将复制它。

要添加到Jay Askren的答案中,您还可以双击“文本”列标题的右侧以完全展开它。 我注意到,即使如此Eclipse会显示的字符数也是有限制的。