java获取系统临时文件目录以及使用File.createTempFile创建临时文件
一、获取系统临时文件目录
通过java的系统属性获取
String tmpdir = System.getProperty("java.io.tmpdir");
输出:
C:\Users\Admin\AppData\Local\Temp\
二、java的系统属性有哪些
属性 | 属性内容 |
---|---|
java.version | Java 运行时环境版本 |
java.vendor | Java 运行时环境供应商 |
java.vendor.url | Java 供应商的 URL |
java.home | Java 安装目录 |
java.vm.specification.version | Java 虚拟机规范版本 |
java.vm.specification.vendor | Java 虚拟机规范供应商 |
java.vm.specification.name | Java 虚拟机规范名称 |
java.vm.version | Java 虚拟机实现版本 |
java.vm.vendor | Java 虚拟机实现供应商 |
java.vm.name | Java 虚拟机实现名称 |
java.specification.version | Java 运行时环境规范版本 |
java.specification.vendor | Java 运行时环境规范供应商 |
java.specification.name | Java 运行时环境规范名称 |
java.class.version | Java 类格式版本号 |
java.class.path | Java 类路径 |
java.library.path | 加载库时搜索的路径列表 |
java.io.tmpdir | 默认的临时文件路径 |
java.compiler | 要使用的 JIT 编译器的名称 |
java.ext.dirs | 一个或多个扩展目录的路径 |
os.name | 操作系统的名称 |
os.arch | 操作系统的架构 |
os.version | 操作系统的版本 |
file.separator | 文件分隔符(在 UNIX 系统中是“/”) |
path.separator | 路径分隔符(在 UNIX 系统中是“:”) |
line.separator | 行分隔符(在 UNIX 系统中是“/n”) |
user.name | 用户的账户名称 |
user.home | 用户的主目录 |
File.createTempFile创建临时文件
File.createTempFile有两个重载的方法
1.
public static File createTempFile(String prefix, String suffix,File directory)
2.
public static File createTempFile(String prefix, String suffix)
第一个方法指定了缓存临时文件的目录,他会在指定的目录生成临时文件
第二个方法没有指定临时文件,它内部通过系统属性java.io.tmpdir
来获取系统的临时文件夹。
测试代码如下:
public static void main(String[] args) throws IOException {
// 创建临时文件
File file = File.createTempFile("test", ".txt");
System.out.println(file.getPath());
System.out.println(file.getName());
FileOutputStream outputStream = new FileOutputStream(file);
String text = "你好";
outputStream.write(text.getBytes());
outputStream.flush();
outputStream.close();
// 手动删除
file.delete();
// 系统退出后自动删除
file.deleteOnExit();
}
输出
C:\Users\Admin\AppData\Local\Temp\test4191473085244289118.txt
test4191473085244289118.txt
可以看到这两个方法会在中间自动加一个字符串,以免文件名称冲突。用完这个临时文件可以调用delete方法手动删除,也可以调用deleteOnExit方法,在系统退出后删除。
评论区
请写下您的评论...
猜你喜欢
blog
window系统中创建'.'开头的文件夹
其他
2764
直接在资源管理器中创建的时候会提示:‘必须键入文件名’解决办法:在cmd命令行中,cd某文件夹,执行md.abc即可创建一个名为.abc的文件夹
blog
linux文件目录类指令笔记
linux系统
4188
linux文件目录类指令笔记pwd:查看当前工作目录mkdira:创建目录a,mkdir-pa/b:创建多级目录/a/brmdir:删除空目录rm-rf:删除目录touch文件名:创建空文件cp:拷
blog
java使用minio上传文件
minio
2269
创建buckets
创建serviceaccounts
java上传文件
maven依赖:
dependency
groupIdio.minio/groupId
算法基础
1580
前端项目正式发布时一般需要混淆压缩js、css文件等,一方面压缩能够使文件体积更小,更多的节约网络io资源,另一方面能避免被人读懂你的代码!!!!!!工具可以使用uglifyjs2。安装通过npm安
linux终端
1089
[使用说明]1.先不要运行SecureCRT2.建议把注册机放到安装目录3.运行注册机4.点击Patch,此时会让你选择SecureCRT.exe和LicenseHelper.exe的位置5.应用
blog
java使用dom4j解析xml文件
工具
3024
引入pom文件dependencygroupIdorg.dom4j/groupIdartifactIddom4j/artifactIdversion2.0.0/version/dependency需
blog
linux的目录结构
linux系统
5448
linux的内核文件,以及/boot/gurb。建议单独分区,分区大小100M即可/dev:存放linux系统下的设备文件,访问该目录下某个文件,相当于访问某个设备,常用的是挂载光驱mount/dev/cd
weblog
2445
java使用easypoi导出并下载excel文件简单导出测试如图:一、pom文件dependencygroupIdcn.afterturn/groupIdartifactIdeasypoi
最新发表
归档
2018-11
12
2018-12
33
2019-01
28
2019-02
28
2019-03
32
2019-04
27
2019-05
33
2019-06
6
2019-07
12
2019-08
12
2019-09
21
2019-10
8
2019-11
15
2019-12
25
2020-01
9
2020-02
5
2020-03
16
2020-04
4
2020-06
1
2020-07
7
2020-08
13
2020-09
9
2020-10
5
2020-12
3
2021-01
1
2021-02
5
2021-03
7
2021-04
4
2021-05
4
2021-06
1
2021-07
7
2021-08
2
2021-09
8
2021-10
9
2021-11
16
2021-12
14
2022-01
7
2022-05
1
2022-08
3
2022-09
2
2022-10
2
2022-12
5
2023-01
3
2023-02
1
2023-03
4
2023-04
2
2023-06
3
2023-07
4
2023-08
1
2023-10
1
2024-02
1
2024-03
1
2024-04
1
标签
算法基础
linux
前端
c++
数据结构
框架
数据库
计算机基础
储备知识
java基础
ASM
其他
深入理解java虚拟机
nginx
git
消息中间件
搜索
maven
redis
docker
dubbo
vue
导入导出
软件使用
idea插件
协议
无聊的知识
jenkins
springboot
mqtt协议
keepalived
minio
mysql
ensp
网络基础
xxl-job
rabbitmq
haproxy
srs
音视频
webrtc
javascript
目录
没有一个冬天不可逾越,没有一个春天不会来临。最慢的步伐不是跬步,而是徘徊,最快的脚步不是冲刺,而是坚持。