看来,如果你打电话

String text = "String<br>String";
Log.d(TAG, text);

它会自动解析String以占用两行。新行(\n)字符也是如此。这使调试更加复杂。有没有办法告诉记录器给我确切的字符串?

最佳答案

Log类中方法的参数是Java字符串,因此转义特殊字符就像在Java中一样。例如,

String text = "String\nString";
Log.d("TEST!!", text);

会给你:
D/TEST!!﹕ String
    String

尽管:
String text = "String\\nString";
Log.d("TEST!!", text);

会给你:
D/TEST!!﹕ String\nString

在logcat中。

<BR>而言,我没有看到与您相同的效果。具体来说,
String text = "String<br>String";
Log.d("TEST!!", text);

产生:
D/TEST!!﹕ String<br>String

因此,我无法重现您的实际问题。但是,通常,与其他Java字符串一样,对Log字符串中的特殊字符进行转义。记录器很笨,没有设置可以自动转义特殊字符;您必须自己为任意字符串执行此操作。 Log方法只是转过来调用println_native

10-08 17:14
查看更多