TextUtils.StringSplitter splitter = new TextUtils.SimpleStringSplitter('\n');
splitter.setString(tweetMessage);
tweetMessage = "";
for (String s : splitter)
{
Log.v(getClass().getSimpleName(), "Spliter :: "+ s);
tweetMessage +=s;
}
但是这会将换行符显示为Squares如何摆脱
答案 0 :(得分:4)
您看到的正方形字符可能不是'\n'
('\u000A'
)个字符。
如果您在输出中看到多行,则可能会使用多个字符来分割线条。它可能是'\r\n'
但它可能是其他东西。
最好的办法是在拆分之前使用调试器准确检查String包含的内容。或者你可以像这样添加一些调试代码:
for (int u : tweetMessage.toCharArray()) {
Log.v(getClass().getSimpleName(), String.format("\\u%04X",u));
}
如果您看到\u000D \u000A
,则您的行以"\r\n"
分隔。这意味着您不能使用SimpleStringSplitter
来拆分字符串,因为它只会拆分为单个字符。
如果您不想手动解析字符串,可以使用String.split()
method:
for (String s : tweetMessage.split("\r\n") {
//do something with s
}
答案 1 :(得分:2)
如果您需要删除字符串开头和结尾处的换行符/制表符(而不是字符串中间的那些),只需使用.trim()
函数来执行tric。这将从字符串的乞讨和结尾删除空格。
例如:
String xmlVersionDate = rootNode.getChildNodeWithName("last-updated").getValue().trim();