合并 RTF 文件?
Merging RTF files?
我正在使用 Java,我需要将两个 .rtf 文件以两个 rtf 文件的原始格式附加、连接、合并或添加(以正确的术语为准)到一个 rtf 文件中.每个 rtf 文件都是一页长,所以我需要从这两个文件创建一个两页的 rtf 文件。
我还需要在新合并的 rtf 文件中的两个文件之间创建一个分页符。我去了 MS word 并能够将两个 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 输出中,并在文件和对象之间使用分页符?
我完全卡住了。我可以在帮助下合并两个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(File file, boolean append),其中 old.rtf 应该附加到 new.rtf,但是当我这样做时,old.rtf 只是写入 new.rtf。
我做错了什么?
当您打开要添加到的文件时,使用 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
。
我正在使用 Java,我需要将两个 .rtf 文件以两个 rtf 文件的原始格式附加、连接、合并或添加(以正确的术语为准)到一个 rtf 文件中.每个 rtf 文件都是一页长,所以我需要从这两个文件创建一个两页的 rtf 文件。
我还需要在新合并的 rtf 文件中的两个文件之间创建一个分页符。我去了 MS word 并能够将两个 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 输出中,并在文件和对象之间使用分页符?
我完全卡住了。我可以在帮助下合并两个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(File file, boolean append),其中 old.rtf 应该附加到 new.rtf,但是当我这样做时,old.rtf 只是写入 new.rtf。
我做错了什么?
当您打开要添加到的文件时,使用 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
。