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

1、createTempFile():FilesampleDir=newFile(Environment.getExternalStorageDirectory().getAbsolutePath()+”/FMRecording”);mSampleFile=File.createTempFile(“FMRecording”,”.m4a”,sampleDir);主要的

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

1、createTempFile():


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

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


2、createNewFile():

<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


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

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

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

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号