考虑我在以下结构中有一些大字符串:
parameter1|parameter2|parameter3|parameter4+"\0"
*其中参数是一些未知长度的字符序列。
现在考虑我的大字符串包含4行数据,例如:
parameter1|parameter2|parameter3|parameter4+"\0"
parameter1|parameter2|parameter3|parameter4+"\0"
parameter1|parameter2|parameter3|parameter4+"\0"
parameter1|parameter2|parameter3|parameter4+"\0"
如何阅读第一行然后阅读第二行,依此类推?
我知道我可以使用Substring
方法每次轻松获取第一行,但是
如何使用Substring
(或其他方法)获取大字符串的后3行,以便再次提取第一行(实际上代表原始大字符串的第二行)。 />
我知道我需要的只是最后一个“\ 0”(第4行)的索引,我已经有了当前行“\ 0”的索引。
我应该使用lastIndexOf("\0")
吗?
如果您对这种工作方式有任何其他想法甚至批评,我将非常高兴听到。
谢谢:)
答案 0 :(得分:4)
您可以将StringReader包装到BufferedReader中,例如:
BufferedReader r = new BufferedReader(new StringReader("my multiline text..."));
String l = null;
while ((l=r.readLine)!=null) {
....
// each line in "l"
}
http://docs.oracle.com/javase/6/docs/api/java/io/BufferedReader.html#readLine() http://docs.oracle.com/javase/6/docs/api/java/io/StringReader.html
答案 1 :(得分:3)
您可以将String.split方法与"\0"
参数一起使用。然后,您将获得一个字符串数组(String[]
),然后您可以随意执行以下操作:)
答案 2 :(得分:2)
也许,
inputString.split("\0");
答案 3 :(得分:0)
我会使用正则表达式来分隔字符串。如果你想要一个字符串数组中的所有单词,你可以使用/ s(空格)作为分隔符模式。
找到相关信息