如何在Java中形成正则表达式,以便能够将匹配的数据直接存储为XML?
问问题
438 次
2 回答
1
我会使用包装您的文本文件的 Scanner 类来做到这一点。然后,使用适当的正则表达式创建一个 Pattern 对象。然后,您将能够将 Pattern 对象提供给 Scanner 实例并定位每个目标数据。最后,为了将这些数据保存为 XML,我将使用 JAXB 来限制内存占用,因为您可能事先不知道必须将多少数据保存为 XML。
于 2012-05-02T07:53:07.970 回答
0
使用类似的东西
public CharSequence fromFile(String filename) throws IOException {
FileInputStream input = new FileInputStream(filename);
FileChannel channel = input.getChannel();
// Create a read-only CharBuffer on the file
ByteBuffer bbuf = channel.map(FileChannel.MapMode.READ_ONLY, 0, (int)channel.size());
CharBuffer cbuf = Charset.forName("8859_1").newDecoder().decode(bbuf);
return cbuf;
}
并比较为:
try {
// Create matcher on file
Pattern pattern = Pattern.compile("pattern");
Matcher matcher = pattern.matcher(fromFile("yourFile.txt"));
// Find all matches
while (matcher.find()) {
// Get the matching string
String match = matcher.group();
}
} catch (IOException e) {
}
于 2012-05-02T08:14:33.410 回答