使用java NIO及高速缓冲区写入文件

byte[] bytes = Files.readAllBytes(Paths.get("E:\\pdf\\aaa\\html\\text.txt").normalize());
        String text = IOUtils.toString(bytes);

        String xml = text.substring(text.indexOf("<tbody>"));
        InputSource inputXML = new InputSource( new StringReader( xml ) );

        XPath xPath = XPathFactory.newInstance().newXPath();
        NodeList nodes = (NodeList) xPath.evaluate("/tbody/tr", inputXML, XPathConstants.NODESET);
        int length = nodes.getLength();
        Path file = Paths.get("E:\\pdf\\aaa\\html\\out.txt");
        try (BufferedWriter writer = Files.newBufferedWriter(file, Charset.defaultCharset(), StandardOpenOption.CREATE)) {
            for (int i = 0; i < length; i++) {
                Node node = nodes.item(i);

                NodeList childList = (NodeList) xPath.evaluate("td", node, XPathConstants.NODESET);
                for (int j = 0; j < childList.getLength(); j++) {
                    Node child = childList.item(j);
                    String content = child.getTextContent();
                    //System.out.print(content);
                    writer.write(content);
                    if (j <childList.getLength() - 1) {
                        writer.write("\t");
                    }
                }
                writer.newLine();
            }


        }

text.txt内容

 

 输出内容:

 

转载于:https://www.cnblogs.com/passedbylove/p/11462562.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值