前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >File中createNewFile()和createTempFile()区别[通俗易懂]

File中createNewFile()和createTempFile()区别[通俗易懂]

作者头像
全栈程序员站长
发布2022-07-26 08:50:31
1.3K0
发布2022-07-26 08:50:31
举报
文章被收录于专栏:全栈程序员必看

大家好,又见面了,我是你们的朋友全栈君。

1、createTempFile():

代码语言:javascript
复制
<span style="font-size:18px;">File sampleDir = new File(Environment.getExternalStorageDirectory().getAbsolutePath() +"/FMRecording");
mSampleFile = File.createTempFile("FMRecording", ".m4a", sampleDir);</span>

主要的区别就是生成的这个文件的命名格式,看到createTempFile()的第一个参数,查看源码可以发现第一个参数是文件的命名的前缀;第二个参数是生成一个随机数作为文件的命名的中间,后面第三个参数是文件的后缀。

2、createNewFile():

代码语言:javascript
复制
<span style="font-size:18px;">long lTime = System.currentTimeMillis();
Calendar calendar = Calendar.getInstance();
calendar.setTimeInMillis(lTime);
String sFileName  = String.format("FMR_%02d%02d%04d_%02d%02d%02d",
		calendar.get(Calendar.DAY_OF_MONTH),calendar.get(Calendar.MONTH) + 1,calendar.get(Calendar.YEAR),
		calendar.get(Calendar.HOUR_OF_DAY),
		calendar.get(Calendar.MINUTE), calendar.get(Calendar.SECOND));
mSampleFile = new File(sampleDir + File.separator + sFileName+".amr");
<span style="white-space:pre">	</span>try {
		mSampleFile.createNewFile();
	} catch (Exception e1) {
		// TODO Auto-generated catch block
		e1.printStackTrace();
	}
	Log.i(TAG, "lsn mSampleFile = "+mSampleFile);
	Log.i(TAG, "lsn sampleDir = "+sampleDir);</span>

这里文件的命名就是用一个存储路径的绝对路径和日期格式命名:比如:FMR_26032015_205830.amr

这是我前几天遇到的一个问题后面了解了一下的,希望大家知道更全的可以补充。

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/128086.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022年4月1,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档