有时需要将数据写入一个临时文件。最常见的使用场景是从 Octave 内部启动的外部程序需要访问数据时。当 Octave 退出时,所有临时文件都将被自动删除,因此无需手动执行此步骤。
[fid, name, msg] = mkstemp ("template") ¶[fid, name, msg] = mkstemp ("template", delete) ¶返回文件描述符 fid,该描述符对应一个从 template 创建并具有唯一名称的新临时文件。
template 的最后六个字符必须是 "XXXXXX",这些字符将被替换为一个使文件名唯一的字符串。随后以读/写模式创建文件,其权限取决于系统(在 GNU/Linux 系统上,对于 glibc 2.0.7 及更高版本,权限为 0600)。文件以二进制模式打开,并使用 O_EXCL 标志。
如果提供了可选参数 delete 且其值为 true,则在 Octave 退出时该文件将被自动删除。
如果成功,fid 是一个有效的文件 ID,name 是文件名,msg 是一个空字符串。否则,fid 为 -1,name 为空,msg 包含一个系统相关的错误消息。
[fid, msg] = tmpfile () ¶返回一个与具有唯一名称的新临时文件相对应的文件 ID。
该文件以二进制读/写("w+b")模式打开,并将在关闭时或 Octave 退出时自动删除。
如果成功,fid 是一个有效的文件 ID,msg 是一个空字符串。否则,fid 为 -1,msg 包含一个系统相关的错误消息。
fname = tempname () ¶fname = tempname (dir) ¶fname = tempname (dir, prefix) ¶以字符串形式返回一个唯一的临时文件名。
如果省略 prefix,则使用值 "oct-"。
如果同时也省略了 dir,则使用临时文件的默认目录(P_tmpdir)。如果提供了 dir,则该目录必须存在,否则将使用临时文件的默认目录。
编程说明:由于 tempname 不会打开该命名文件,因此在程序尝试打开它时该文件有可能(尽管可能性相对较小)不可用。如果这是一个问题,请参阅 tmpfile。
dir = tempdir () ¶返回主机系统中临时文件目录的名称。
目录名称首先取自环境变量 TMPDIR。如果该变量不存在,则检查环境变量 TMP(在 Windows 平台上还以更高优先级检查环境变量 TEMP)。如果这些变量均未设置,则使用 P_tmpdir 返回的系统默认值。
版权所有 © 2024-2026 Octave中文网
ICP备案/许可证号:黑ICP备2024030411号-2