gpt4 book ai didi

java - 在java中解析文本

转载 作者:行者123 更新时间:2023-12-01 15:27:55 24 4
gpt4 key购买 nike

我是高级编程新手,好吧,我知道这是一个非常不专业的问题:-

我喜欢用java解析文件

例如我的 in.vmf 包含:

vaps graxxx
metagraphic
ccccc cccc
vvvv vvvv
xxx cccc
Begin_object "xxx"
Translate
somethoing
anything
end Begin_object

我想用以下规则解析上面的文件:

  • 如果它找到第一行“vaps graxx”,它将进行复制/解析,直到找到Begin_object。并添加一些行
  • 然后搜索其他单词并复制/解析直到某些内容并添加一些行
  • 继续进行其他类似搜索等等

这里是我的代码

    BufferedReader FileBuf;

try{

// Open the file and read the file
FileBuf = new BufferedReader(new FileReader("arc.VMF"));


// Create a new file
OutputFile = new PrintWriter(new FileWriter("newarc.VMF"));

// Start reading file Line by Line

while ((LineRead = FileBuf.readLine()) != null) {

// LineStr = LineRead.split("");

if (LineRead.isEmpty()) {
System.out.println("Line is empty");

}
if ((LineRead.startsWith("%"))
&& (LineRead.indexOf("V A P S") > 0)) {
OutputFile.println(LineRead);
}
if (LineRead.indexOf("BEGIN_OBJECT") > 0) {
OutputFile.println(LineRead);

}

.......
.....
....
}

FileBuf.close();
OutputFile.close();

任何人都可以提供一些建议,将会有很大的帮助。谢谢

最佳答案

我的建议是使用 jflex 和 cup 之类的东西编写一个解析器(用 java 或其他语言)。

通过这样做,您可以解析文件并指定极其清晰的规则。

看看这里:http://en.wikipedia.org/wiki/Lexical_analysis在这里 http://en.wikipedia.org/wiki/Parsing

JFlex:http://jflex.de/

杯子:http://www.cs.princeton.edu/~appel/modern/java/CUP/manual.html

关于java - 在java中解析文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9945105/

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