java - Java读写文件时如何保持格式一致?

标签 java xml read-write

我正在尝试读取 xml 文件(in.arxml)并将其复制到另一个 xml 文件(out.arxml)中。当我刚刚读取 in.arxml 文件并在工作区中显示内容时,间距和格式将保持不变,并且与文件中的内容完全相同。但是,当我将其写入 out.arxml 文件时,整个文件将打印在一行上。有人可以告诉我我做错了什么吗?我读取和写入文件的代码如下所示:

 BufferedWriter out;
 BufferedReader in;
 String x =null;
 int lineNumb=0;

 try {

            in = new BufferedReader (new FileReader("C:\\New_folder\\in.arxml"));
            out = new BufferedWriter(new FileWriter(""C:\\New_folder\\out.arxml"));
            while (in.readLine()!= null){

                x = in.readLine();
                java.lang.System.out.println(x);
                out.write(x);

                lineNumb++;
            }
            in.close();
       }catch (IOException e){
            java.lang.System.out.println("There was a problem" + e);
        }

in.arxml 文件如下所示:

  <?xml version="1.0" encoding="UTF-8"?>
  <xxx xmlns="http://xd3.h?.org" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation=""http://www.w3.org/2001/XMLSchema-instance">

编写的out.arxml看起来像这样

  <?xml version="1.0" encoding="UTF-8"?> <xxx xmlns="http://xd3.h?.org" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation=""http://www.w3.org/2001/XMLSchema-instance">

感谢您提前提供的帮助。

最佳答案

out.write(x); 之后,添加以下行:

out.newLine();

这将添加缺少的回车符。

关于java - Java读写文件时如何保持格式一致?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33344697/

相关文章:

c# - 使用来自 XML 文件的单独元素

python - 如何在包含 ':' 的 KML 树中查找元素

java - Android、Gradle 产品 flavor ;包不存在

java - Java/Swing 的最佳 GUI 构建器

java - 无法通过 Web 服务方法返回 org.w3c.dom.Document

c++ - 从文件中读取大量内容并将该内容写入新文件

javascript - module.exports 返回未定义

C语言中TCP服务器与客户端的通信

java - 没有注册类 'com.sun.proxy.$Proxy33' - GAE 端点上的 BadRequest

java - 以编程方式向 Eclipse 中的下拉按钮添加选项