使用Java将文本从一个文件复制到另一个文件

使用Java将文本从一个文件复制到另一个文件,java,file-io,Java,File Io,Testing.txt的内容未在Testing2.txt中复制。如果我在Testing2.txt中存储了一些随机数据,那么当我运行java项目时,它会被删除,而不是复制Testing.txt的内容 这里是链接到。这些步骤是严格遵循的,我已经按照给定的方式命名了项目、包和类 为什么没有复制内容?您的FileWriter对象会覆盖写入文件的数据。 请尝试使用此构造函数,它会附加数据: FileWriter public FileWriter(String fileName,

Testing.txt
的内容未在
Testing2.txt
中复制。如果我在
Testing2.txt
中存储了一些随机数据,那么当我运行java项目时,它会被删除,而不是复制
Testing.txt
的内容

这里是链接到。这些步骤是严格遵循的,我已经按照给定的方式命名了项目、包和类


为什么没有复制内容?

您的
FileWriter
对象会覆盖写入文件的数据。 请尝试使用此构造函数,它会附加数据:

FileWriter

public FileWriter(String fileName,
                  boolean append)
           throws IOException

FileWriter
对象覆盖写入文件的数据。 请尝试使用此构造函数,它会附加数据:

FileWriter

public FileWriter(String fileName,
                  boolean append)
           throws IOException

在阅读和写作中都缺少:

} finally {
    writer.close();
}
作为:


在阅读和写作中都缺少:

} finally {
    writer.close();
}
作为:


操作完成后关闭编写器和读卡器,即可正常工作。

操作完成后关闭编写器和读卡器,即可正常工作。

请粘贴代码。是否确实未对正在修改的文件保留任何xlock?请粘贴代码。你确定你没有对正在修改的文件保留任何xlock吗?我在测试时还发现了一件事,即如果我运行应用程序保留testing.txt空白文件,理想情况下Texting2.txt应该保持空白,但有一个小的垂直矩形字符,当我粘贴到此处时,它改为“ਠ" . 现在为什么这个矩形字符出现在Gurmuki字母TTHA(?)中。你确定原始文件是空的(不是文件结尾字符)?文件0B的属性不是0KB。是的,我再次检查了没有文件结尾字符,文件是绝对空的,出现的字符不是“TTHA”“这是一个普通字符大小的小矩形框,当我复制粘贴到堆栈溢出中时,它会变为THAA,这可能是由于不同的编码风格或兼容性原因。我认为它代表了ait,代表了一个新行字符,它出现在Testing.txt中我按下enter键(在下一行中写入)的地方。我真的不知道如何在测试中去掉这个矩形框。txtA字符矩形可能是所用字体中不存在的字符。请检查读取的
文件.getLength()==0
,因为我仍然无法确定。不太可能,但手动编辑可能会添加文件结束符号(Ctrl-Z、Ctrl-D)。它还可能在文件前面输入一个BOM字符(Unicode变体的标记,零宽度空格)。我在测试时还发现了一件事,即如果我运行应用程序保持testing.txt空白文件,则理想情况下Texting2.txt应该保持空白,但是有一个小的垂直矩形字符,当我粘贴到这里时,它变为“ਠ" . 现在为什么这个矩形字符出现在Gurmuki字母TTHA(?)中。你确定原始文件是空的(不是文件结尾字符)?文件0B的属性不是0KB。是的,我再次检查了没有文件结尾字符,文件是绝对空的,出现的字符不是“TTHA”“这是一个普通字符大小的小矩形框,当我复制粘贴到堆栈溢出中时,它会变为THAA,这可能是由于不同的编码风格或兼容性原因。我认为它代表了ait,代表了一个新行字符,它出现在Testing.txt中我按下enter键(在下一行中写入)的地方。我真的不知道如何在测试中去掉这个矩形框。txtA字符矩形可能是所用字体中不存在的字符。请检查读取的
文件.getLength()==0
,因为我仍然无法确定。不太可能,但手动编辑可能会添加文件结束符号(Ctrl-Z、Ctrl-D)。它还可能在文件前面输入BOM字符(Unicode变体的标记,零宽度空格)。