因为我们使用logcat作为android的控制台。 有些情况下输出文本/消息有点大,我看不到完整的输出。 log cat仅显示它的起始部分。 有没有办法扩展它,以便我可以看到完整的消息?
答案 0 :(得分:15)
这是我解决问题的方法。希望它有所帮助。
在代码中使用它的重要方法是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);
}
}
}
答案 1 :(得分:10)
我从不使用GUI来查看logcat输出,因此我不确定DDMS / Eclipse UI中是否存在滚动条。
无论如何,您可以从命令行使用logcat - 有很多选项。
持续观看有效设备的日志:adb logcat
转储整个日志:adb logcat -d
要将整个日志转储到文件:adb logcat -d > log.txt
过滤和显示特定的日志标记:adb logcat -s MyLogTag
......还有更多!
答案 2 :(得分:3)
如果你想编写长信息以便在logcat
中查看,可能值得用android.util.Log
方法编写自己的包装器,这会将你的长信息分成多行。
答案 3 :(得分:2)
当然,您可以更改列宽,只需单击并拖动行的末尾即可。对于很长的消息来说,这是一种痛苦。如果我有一个非常长的消息,我通常会复制该行并将其粘贴到文本文件中。 Windows中的Ctrl-C将复制它。
答案 4 :(得分:0)
要添加到Jay Askren的答案,您还可以双击“text”列标题的右边缘以完全展开它。我注意到即便如此,Eclipse将显示的字符数也有限制。