如果在写入过程中出现任何异常,是否可以回滚当前的 IO 操作?我正在尝试使用以下表达式将 UTF-8 字符串写入带有 Okio 库的文件
file.sink().buffer().writeUtf8(fileContent).close()
它适用于正常情况。但是如果在写入过程中发生异常,它只是将一个空字符串写入一个文件,覆盖现有的文件。
我知道我可以在写入之前备份旧内容,并在出现异常时覆盖在 catch 块中。但这看起来是一个常见问题,我想知道是否有任何替代解决方案可以解决这个问题。
谢谢!