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

ynduanlian 2020-03-05 06:56:22
当我的程序需要在运行中产生一个临时文件,我是把文件放在程序当前目录好呢,还是放在系统临时目录好?或者其实没有什么区别?
...全文
165 5 打赏 收藏 举报
写回复
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
只要记得用完了清理,没啥区别
不清理扔到哪儿都是垃圾, 放到系统临时目录下的文件,也不是系统替你自动清理的。那个目录只是明确的说,这儿是垃圾堆,仅此而已
  • 打赏
  • 举报
回复
相关推荐
发帖
C++ 语言
加入

6.2w+

社区成员

C++ 语言相关问题讨论,技术干货分享,前沿动态等
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
申请成为版主
帖子事件
创建了帖子
2020-03-05 06:56
社区公告
暂无公告