如何打开文件进行写入?
How to open file for writing?
我正在尝试使用 Dart 的 IO 库打开和写入文件。
我有这个代码:
File file = File("text.txt");
RandomAccessFile raf = file.openSync();
raf.writeStringSync("A string!");
现在执行此操作时,我在控制台中收到以下错误:
(OS Error: Access is denied., errno = 5)
所以文件没有打开写入,我正在看这里:open method,不知道如何使用 open
或 openSync
来获取 RandomAccessFile
我可以写信给。
它说我需要使用 write constant 来做到这一点,但就是不知道如何做?
如果我尝试创建 FileMode 并将其作为参数添加到 open
方法中,我会收到一条错误消息:
Error: Too many positional arguments: 0 allowed, but 1 found.
所以open
和openSync
方法不能接受任何参数,如何使用FileMode
和open
方法打开一个准备好的文件写作?所以我需要得到处于写作模式的RandomAccessFile
?默认情况下它仅处于读取模式?我没有尝试使用 writeString
或 writeStringSync
,我知道这些方法存在,但我感兴趣的是如何使用 open
和 openSync
方法完成 return RandomAccessFile
!
更新:
您遇到此错误:
Error: Too many positional arguments: 0 allowed, but 1 found.
因为openSync方法没有位置参数,只有一个命名参数(mode
)。
因此,要修复您的代码,您必须添加它:
RandomAccessFile raf = file.openSync(mode: FileMode.append); //Or whatever mode you'd to apply
话虽如此,还有其他几种写入文件的方法,其中大部分列在文档中:
writeString or writeStringSync,如果你只需要写入一次文件,我会建议这些。
openWrite,其中returns一个Stream
可以写入到文件中
(所有这些方法都有一个 FileMode mode
命名参数)
我正在尝试使用 Dart 的 IO 库打开和写入文件。
我有这个代码:
File file = File("text.txt");
RandomAccessFile raf = file.openSync();
raf.writeStringSync("A string!");
现在执行此操作时,我在控制台中收到以下错误:
(OS Error: Access is denied., errno = 5)
所以文件没有打开写入,我正在看这里:open method,不知道如何使用 open
或 openSync
来获取 RandomAccessFile
我可以写信给。
它说我需要使用 write constant 来做到这一点,但就是不知道如何做?
如果我尝试创建 FileMode 并将其作为参数添加到 open
方法中,我会收到一条错误消息:
Error: Too many positional arguments: 0 allowed, but 1 found.
所以open
和openSync
方法不能接受任何参数,如何使用FileMode
和open
方法打开一个准备好的文件写作?所以我需要得到处于写作模式的RandomAccessFile
?默认情况下它仅处于读取模式?我没有尝试使用 writeString
或 writeStringSync
,我知道这些方法存在,但我感兴趣的是如何使用 open
和 openSync
方法完成 return RandomAccessFile
!
更新:
您遇到此错误:
Error: Too many positional arguments: 0 allowed, but 1 found.
因为openSync方法没有位置参数,只有一个命名参数(mode
)。
因此,要修复您的代码,您必须添加它:
RandomAccessFile raf = file.openSync(mode: FileMode.append); //Or whatever mode you'd to apply
话虽如此,还有其他几种写入文件的方法,其中大部分列在文档中:
writeString or writeStringSync,如果你只需要写入一次文件,我会建议这些。
openWrite,其中returns一个
Stream
可以写入到文件中
(所有这些方法都有一个 FileMode mode
命名参数)