我有兴趣将我收到的一些数据写入两个不同的文件(相同的数据).
在我的代码中,我使用BufferedWriter和FileWriter将数据写入文件,我希望,作为备份,在本地存储和SD卡上写入相同的数据.
我的问题是,如果我需要用2个FileWriters和2个BufferedWriters来实现它,还是有办法对两个文件使用相同的BufferedWriter?
有没有更有效的方法来实现这项任务?
解决方法:
重用同一个编写器是不可能的 – 除非你花时间实现自己的Writer特殊子类,它在同一时间点将其输出写入多个文件. (然后将这样一个CopyingWriter的实例传递给BufferedWriter的ctor).
但我建议不这样做.相反:写一次文件.然后使用其他现有技术来复制输出文件.
始终瞄准简单.您打算创建一个非常特殊的解决方案,其中一个编写器写入n个文件.但没有必要这样做.写一次你的文件,然后复制n次.这种方法不需要“创新” – 你只需要使用已经存在的东西(例如参见here).