我考虑使用tmpnam
来设置QPrinter
的输出文件名。但Python文档建议不要使用它。
os.tmpnam()
返回合适的创建临时路径的唯一路径名 文件。 ......应用程序负责 正确创建和管理 使用由返回的路径创建的文件 使用tmpnam();没有自动清理 提供。
Windows:微软的 总是警告
使用tmpnam()容易受到符号链接攻击;考虑使用 tmpfile()(部分文件对象 创作)而不是。
tmpnam()
的实施 在根目录中创建一个名称 当前的驱动器,那是 一般来说,一个温度较低的地方 文件(取决于特权,你可以 甚至无法使用打开文件 这个名字)。
QPrinter
的输出文件名,有什么安全的选择?答案 0 :(得分:7)
答案 1 :(得分:0)
根据QPrinter如何处理已存在的文件,您可以使用QTemporaryFile创建文件,然后关闭文件并保持对QTemporaryFile对象的引用,直到完成为止。 (当您销毁对象时,这也将为您清理文件。)