如何拆分很长的字符串

时间:2013-11-14 10:10:15

标签: java string

我有大文件(约30mb),这里是我用来从文件中读取数据的代码

BufferedReader br = new BufferedReader(new FileReader(file));
                try {
                    String line = br.readLine();
                    while (line != null) {
                        sb.append(line).append("\n");
                        line = br.readLine();
                    }

然后我需要拆分我读过的内容,所以我使用

String[] inst = sb.toString().split("GO");

问题是有时子字符串超过了最大字符串长度,我无法获取字符串中的所有数据。我怎么能摆脱这个?

由于

2 个答案:

答案 0 :(得分:1)

Scanner s = new Scanner(input).useDelimiter("GO");并使用s.next()

答案 1 :(得分:0)

为什么部分: - 错误的结果可能是非连续堆段的结果,因为CMS收集器不会解压缩内存。

(虽然没有回答你如何解决部分问题。)

您可以选择分批加载整个字符串,即使用子字符串