我使用的是Java,我需要将两个.rtf文件(以两个rtf文件的原始格式)附加、连接、合并或添加到一个rtf文件中,无论哪个术语都是正确的。每个rtf文件都有一页长,所以我需要从这两个文件创建一个两页的rtf文件。
我还需要在两个文件之间创建一个分页,在新的合并rtf文件中。我去了MS,能够将两个rtf文件合并在一起,但这只是创建了一个没有分页的长rtf文件。
我有一个代码,但它只以相同的方式将一个文件复制到另一个文件,但我需要帮助调整这个代码,以便将两个文件复制到一个文件中。
FileInputStream file = new FileInputStream("old.rtf");
FileOutputStream out = new FileOutputStream("new.rtf");
byte[] buffer = new byte[1024];
int count;
while ((count= file.read(buffer)) > 0)
out.write(buffer, 0, count);如何将另一个FileInputStream对象添加到FileInputStream文件的顶部,在FileOutputStream out中添加一个文件和对象之间的分页符?
我完全被困住了。我能够结合两个rtf文件与帮助,但不能保持两个rtf文件的原始格式到新的一个。
我试过:
FileInputStream file = new FileInputStream("old.rtf");
FileOutputStream out = new FileOutputStream("new.rtf", true);
byte[] buffer = new byte[1024];
int count;
while ((count= file.read(buffer)) > 0)
out.write(buffer, 0, count);FileOutputStream(文件文件,布尔追加),其中old.rtf应该附加到new.rtf,但当我这样做时,old.rtf只是被写入new.rtf。
我做错了什么?
发布于 2016-12-19 15:20:12
打开要添加的文件时,使用设置为true的FileOutputStream(File file, boolean append),append设置为true,然后可以添加到新文件中,而不是重写它。
FileInputStream file = new FileInputStream("old.rtf");
FileOutputStream out = new FileOutputStream("new.rtf", true);
byte[] buffer = new byte[1024];
int count;
while ((count= file.read(buffer)) > 0)
out.write(buffer, 0, count);这将将old.rtf附加到new.rtf。
你也可以:
FileInputStream file = new FileInputStream("old1.rtf");
FileOutputStream out = new FileOutputStream("new.rtf");
byte[] buffer = new byte[1024];
int count;
while ((count= file.read(buffer)) > 0)
out.write(buffer, 0, count);
file.close();
file = new FileOutputStream("old2.rtf");
while ((count= file.read(buffer)) > 0)
out.write(buffer, 0, count);这将将old1.rtf和old2.rtf连接到新文件new.rtf。
https://stackoverflow.com/questions/41225713
复制相似问题