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


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

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

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

(0)
上一篇 2022年4月11日 上午7:20
下一篇 2022年4月11日 上午7:40


相关推荐

  • VMware安装时出现 “您无权输入许可证密钥,请使用系统管理员账户重试”解决方案

    VMware安装时出现 “您无权输入许可证密钥,请使用系统管理员账户重试”解决方案VMware 安装时出现 您无权输入许可证密钥 请使用系统管理员账户重试 解决方案由于问题已解决 当时没截图就不上图了 具体解决方案如下 1 工具栏搜索 cmd 找到命令提示符 2 右击以管理员身份运行 3 找到 VMware 安装目录 下面以我的为例 4 进入 VMware 的安装目录下的 x64 文件夹 复制地址 如下 5 在已打开的 cmd 中输入代码 cd dd cdD ProgramFiles XUNIJI x64 这里以我的目录为例 将加粗部分改为你的 VMware 的

    2026年3月17日
    2
  • mac idea 2021 激活码【注册码】

    mac idea 2021 激活码【注册码】,https://javaforall.net/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

    2022年3月18日
    56
  • @SpringBootApplication_springboot启动类作用

    @SpringBootApplication_springboot启动类作用Args作用传递参数的一种方式;例如启动的时候java-jar–spring.profiles.active=prod或者更改自己的自定义配置信息;使用方式是–key=value它的信息优先于项目里面的配置;我们现在大部分项目都是用SpringBoot进行开发的,一般启动类的格式是SpringApplication.run(SpringBootDemoPropertiesApplication.class,args);但是好像平常一直也没有用到args;也没有穿过参数

    2025年9月8日
    6
  • 进程调度程序设计实验报告_进程调度模拟程序设计实验报告

    进程调度程序设计实验报告_进程调度模拟程序设计实验报告进程调度的设计与实现中文摘要无论是在批处理系统还是分时系统中,用户进程数一般都多于处理机数、这将导致它们互相争夺处理机。另外,系统进程也同样需要使用处理机。这就要求进程调度程序按一定的策略,动态地把处理机分配给处于就绪队列中的某一个进程,以使之执行。关键词进程调度C++优先级生命周期pidstatus前言实验目的1、综合应用下列知识点设计并实现操作系统的进程调度:邻接表,布…

    2026年4月17日
    3
  • matlab中wavedec2,说说wavedec2函数[通俗易懂]

    matlab中wavedec2,说说wavedec2函数[通俗易懂]wavedec2函数:1.功能:实现图像(即二维信号)的多层分解.多层,即多尺度.2.格式:[c,s]=wavedec2(X,N,’wname’)[c,s]=wavedec2(X,N,Lo_D,Hi_D)(我不讨论它)3.参数说明:对图像X用wname小波基函数实现N层分解,这里的小波基函数应该根据实际情况选择,具体选择办法可以搜之.输出为c,s.c为各层分解系数,s为各层分解系数长度,也就是大小…

    2022年6月15日
    31
  • python生成时间戳_Python 获取时间戳

    python生成时间戳_Python 获取时间戳importtimetime_tup=time.localtime(time.time())printtime_tupformat_time=’%Y-%m-%d_%a_%H-%M-%S’cur_time=time.strftime(format_time,time_tup)printcur_time参考:https://blog.csdn.net/a542551042/articl…

    2022年10月3日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

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