4

您能否帮助评论一下 Delphi 中以下 fmShareDenyNone FileOpen 语句在 Java 中的等效项?

TFileStream.Create(
    'C:\Test.txt', fmOpenRead or fmShareDenyNone);

, wherefmShareDenyNone在 FileOpen 调用中与 fmOpenReadWrite、fmOpenRead 或 fmOpenWrite 之一一起用于打开文件,以便其他进程也可以读取/写入文件。

目前我正在使用以下语句打开文件进行写入。它给出“java.nio.file.FileSystemException: ... 该文件,因为它正被另一个进程使用。” 如果我打开第二个文件查看器,例如 UltraEdit。

BufferedWriter br = java.nio.file.Files.newBufferedWriter(
    java.nio.file.Paths.get("test.txt"), 
    java.nio.charset.Charset.forName("UTF-8"), 
    new java.nio.file.OpenOption[]{java.nio.file.StandardOpenOption.WRITE}
);

PS:我希望有一个内置的等价物(自然是跨平台的)。

非常感谢您的意见!

4

0 回答 0