使用 BufferedWriter 将相同数据写入多个文件
use BufferedWriter to write same data to multiple files
我有兴趣将我收到的一些数据写入两个不同的文件(相同的数据)。
在我的代码中,我使用 BufferedWriter
和 FileWriter
将数据写入文件,作为备份,我希望将相同的数据写入本地存储和SD 卡。
我的问题是我是否需要使用 2 FileWriters
和 2 BufferedWriters
来实现它,或者有没有办法对两个文件使用相同的 BufferedWriter
?
有没有更有效的方法来完成这个任务?
重用相同 writer 是不可能的 - 除非你花时间实现你自己的 Writer 的特殊子类,它在同一时间点将其输出写入多个文件. (然后将此类 CopyingWriter
的实例传递给 BufferedWriter 的 ctor)。
但我建议不要那样做。相反:将文件写入 一次。然后使用其他现有技术复制输出文件。
始终以简单为目标。您打算创建一个非常特殊的解决方案,其中一个写入器写入 n 个文件。但没有必要这样做。编写文件一次,然后将其复制 n 次。这种方法不需要 "innovation" - 你只需要使用已经存在的东西(例如参见 [=12=])。
我有兴趣将我收到的一些数据写入两个不同的文件(相同的数据)。
在我的代码中,我使用 BufferedWriter
和 FileWriter
将数据写入文件,作为备份,我希望将相同的数据写入本地存储和SD 卡。
我的问题是我是否需要使用 2 FileWriters
和 2 BufferedWriters
来实现它,或者有没有办法对两个文件使用相同的 BufferedWriter
?
有没有更有效的方法来完成这个任务?
重用相同 writer 是不可能的 - 除非你花时间实现你自己的 Writer 的特殊子类,它在同一时间点将其输出写入多个文件. (然后将此类 CopyingWriter
的实例传递给 BufferedWriter 的 ctor)。
但我建议不要那样做。相反:将文件写入 一次。然后使用其他现有技术复制输出文件。
始终以简单为目标。您打算创建一个非常特殊的解决方案,其中一个写入器写入 n 个文件。但没有必要这样做。编写文件一次,然后将其复制 n 次。这种方法不需要 "innovation" - 你只需要使用已经存在的东西(例如参见 [=12=])。