gpt4 book ai didi

JAVA:从文本文件中获取特定字符串的内容

转载 作者:行者123 更新时间:2023-11-29 05:24:56 26 4
gpt4 key购买 nike

我有一个这样的文本文件:

  text
text
text
.
.
@data
instances1
instances2
.
.
instancesN

我想获取这个文件从@data到文件末尾的内容,我该怎么做?

我找到了 FileUtils(来自 apache commons-lang)类的这个方法,但只有当我已经知道行号时它才可用。

String ln = FileUtils.readLines(new File("arff_file/"+results.get(0)))
.get(lineNumber);

最佳答案

由于您使用的是 Apache Commons,因此您可以在一行中完成:

String contents = FileUtils.readFileToString(new File("arff_file/"+results.get(0)), "UTF-16").replaceAll("^.*?(?=@data)", "");

这个作品由

  • 将整个文件读入一个字符串
  • 使用基于正则表达式的 replaceAll() 删除(通过替换为空白)所有内容,但不包括 @data

^.*?(?=@data) 的正则表达式分解为:

  • ^ 输入开始
  • .*? 勉强量化的通配符
  • (?=@data) 断言下一个输入是 @data
  • 的正(非消耗)前瞻

勉强使用的量词可能很重要,因此它不会跳过第一个 @data,以防它在输入中出现不止一次。

关于JAVA:从文本文件中获取特定字符串的内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23043670/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com