我发现在scalax.io._文件的写入操作中的默认方式是“append”。 但是,如何使用Resource.fromFile对象进行类似于系统IO打开(..,WRITE)调用等数据写入操作的最佳和最短的方式是什么?我的想法是删除文件或使用寻求/修补API。但他们为了这样简单的操作而冗长。scalax.io._覆盖文件中数据的最佳方法
scala> def mk(s:String) = { val out: Output = Resource.fromFile("/tmp/data");out.write(s)}
mk: (s: String)Unit
scala> mk("XXXX")
scala> mk("XXXX")
bash# > ls -l /tmp/data
-rw-rw-r-- 1 root root 8 Jun 1 16:27 /tmp/data
在现有文件的解决方案不工作。它不能写入完整的文件,换句话说它不会截断。似乎文档不是最新的,或者我不明白作者的逻辑。 – Oleg
是的,你是对的以前的解决方案没有工作。更新了我的答案。作为Scala-io的作者,在这里发布了一些非常详细的教程,您可能想要跟随每日Scala的链接。 – vitalii
我们如何在写完后关闭文件?谢谢! – Learner