java - 如何从大字符串中逐行读取?

标签 java string substring indexof

考虑我在以下结构中有一些大字符串:

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")吗?
如果您对这种工作方式有任何其他想法甚至批评,我将非常高兴听到。

谢谢:)

最佳答案

您可以使用包装到 BufferedReader 中的 StringReader,例如:

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

关于java - 如何从大字符串中逐行读取?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10706015/

相关文章:

java - 无法使用 proguard 保留方法

java - 使用 jpa 标准选择另一个表中每个状态的出现次数

c - C 程序中的段错误(核心已转储)

ruby - 如何找出字符串是否包含存储在变量中的单词

c - 如何在 C 中对字符串进行切片?

java - 检查字符串是否包含 Velocity 中的特定子字符串

java - 为什么我的paintComponent 方法会在我的JButton 上进行绘制?如何使 JPanel 上同时具有 JButton 和图形?

java - 什么是NullPointerException,我该如何解决?

c - 在 [ C ] 中查找字符串函数

MySQL SELECT REPLACE 字符串的一部分