记一次XML文件 批量添加属性

复制代码
 public static void main(String[] age){

        try {
            List<Path> collect = Files.walk(Paths.get("D:\\modelform")).filter(Files::isRegularFile).collect(Collectors.toList());
            SAXReader reader = new SAXReader();
            Map<String,String> map =new HashMap<>();
            for (Path path : collect) {
                Document read = reader.read(new FileInputStream(path.toString()));
                String name = read.getRootElement().attributeValue("name");
                map.put(path.getFileName().toString(),name);
            }

            List<Path> collect2 = Files.walk(Paths.get("D:\\modelfield")).filter(Files::isRegularFile).collect(Collectors.toList());

            Map<String,Document> m =new HashMap<>();
            for (Path path : collect2) {
                Document read = reader.read(new FileInputStream(path.toString()));
                String s = path.getFileName().toString();
                read.getRootElement().element("model").addAttribute("name",map.get(s));
                m.put(path.toString(),read);
            }
            OutputFormat format = OutputFormat.createPrettyPrint();

            for (Map.Entry<String, Document> stringDocumentEntry : m.entrySet()) {
                File file1 =new File(stringDocumentEntry.getKey());
                XMLWriter writer = new XMLWriter(new FileOutputStream(file1), format);
                writer.setEscapeText(false);
                writer.write(stringDocumentEntry.getValue());
                writer.close();
            }

//            File file1 =new File("");
//            // 6、生成xml文件
//            XMLWriter writer = new XMLWriter(new FileOutputStream(file), format);
//            // 设置是否转义,默认使用转义字符
//            writer.setEscapeText(false);
//            writer.write(document);
//            writer.close();
            System.out.println("生成rss.xml成功");



        } catch (Exception e) {
            e.printStackTrace();
        }
    }
复制代码

 

 public static void main(String[] age){

try {
List<Path> collect = Files.walk(Paths.get("D:\\modelform")).filter(Files::isRegularFile).collect(Collectors.toList());
SAXReader reader = new SAXReader();
Map<String,String> map =new HashMap<>();
for (Path path : collect) {
Document read = reader.read(new FileInputStream(path.toString()));
String name = read.getRootElement().attributeValue("name");
map.put(path.getFileName().toString(),name);
}

List<Path> collect2 = Files.walk(Paths.get("D:\\modelfield")).filter(Files::isRegularFile).collect(Collectors.toList());

Map<String,Document> m =new HashMap<>();
for (Path path : collect2) {
Document read = reader.read(new FileInputStream(path.toString()));
String s = path.getFileName().toString();
read.getRootElement().element("model").addAttribute("name",map.get(s));
m.put(path.toString(),read);
}
OutputFormat format = OutputFormat.createPrettyPrint();

for (Map.Entry<String, Document> stringDocumentEntry : m.entrySet()) {
File file1 =new File(stringDocumentEntry.getKey());
XMLWriter writer = new XMLWriter(new FileOutputStream(file1), format);
writer.setEscapeText(false);
writer.write(stringDocumentEntry.getValue());
writer.close();
}

// File file1 =new File("");
// // 6、生成xml文件
// XMLWriter writer = new XMLWriter(new FileOutputStream(file), format);
// // 设置是否转义,默认使用转义字符
// writer.setEscapeText(false);
// writer.write(document);
// writer.close();
System.out.println("生成rss.xml成功");



} catch (Exception e) {
e.printStackTrace();
}
}

posted on   天道酬勤,学无止境  阅读(82)  评论(0编辑  收藏  举报

相关博文:
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5
点击右上角即可分享
微信分享提示