当我的程序需要在运行中产生一个临时文件,我是把文件放在程序当前目录好呢,还是放在系统临时目录好?或者其实没有什么区别?

ynduanlian 2020-03-05 06:56:22
当我的程序需要在运行中产生一个临时文件,我是把文件放在程序当前目录好呢,还是放在系统临时目录好?或者其实没有什么区别?
...全文
235 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
ynduanlian 2020-03-05
  • 打赏
  • 举报
回复
讲的非常好,很有道理,谢谢。
寻开心 2020-03-05
  • 打赏
  • 举报
回复
系统临时文件夹空间不足,就要让用户来选择呢一个文件夹更合理
系统临时文件夹和系统的program目录也未必是同一个磁盘呢
我用windows的习惯就是把临时文件夹,单独弄个硬盘放
这个硬盘不放其他的东西,差不多满了或者觉得碎片太多了,格式化一下效率就起来了
临时文件经常读写,造成的磁盘碎片最多。当然也和磁盘分区格式有关系,选择一个读写速度快的磁盘当临时文件夹还是有助于提高效率的
寻开心 2020-03-05
  • 打赏
  • 举报
回复
这个不是宽松不宽松的问题啊
应用程序可能在只读的光盘上运行呢, 它不能在当前程序的路径下产生临时文件
windows有系统的api,能过获取系统临时文件夹, 这个时候利用它才是合理的
你不能假定c就一定是系统文件夹, c是否存在都是两说呢,即便存在,你也未必有写入的权限啊
而windows的临时文件夹,天生就是做这个事儿的,当然你还要检测空间够不够,不够还要让系统自己指定一个临时文件夹更好
ynduanlian 2020-03-05
  • 打赏
  • 举报
回复
现在碰到的主要问题是:程序打包后,用户到自己电脑上安装,在Win10下用户通常把软件安装在C盘的Program Files目录下。然而运行时,经常会有当前用户不能在安装目录(程序当前目录)下写临时文件的情况(程序就变成“不响应”,也不报错),不知系统临时文件夹会不会权限更宽松一些?
寻开心 2020-03-05
  • 打赏
  • 举报
回复
只要记得用完了清理,没啥区别
不清理扔到哪儿都是垃圾, 放到系统临时目录下的文件,也不是系统替你自动清理的。那个目录只是明确的说,这儿是垃圾堆,仅此而已

64,648

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧