-2

如何在Java中形成正则表达式,以便能够将匹配的数据直接存储为XML?

4

2 回答 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 回答