android file mkdir,警告:File.mkdir()被忽略

本文介绍了如何处理在使用MediaRecorder API进行音频录制时,遇到的SD卡文件创建警告。作者提供了多种方法解决mkdir()警告,包括检查目录存在性、处理mkdir结果并根据需要执行操作,以及如何通过注释抑制编译警告。
摘要由CSDN通过智能技术生成

我使用Media Recorder API创build了一个基本的audio录音应用程序。 我试图在SD卡中创build一个文件夹,并将录制的文件保存到该文件夹​​。 我收到以下代码的警告。

File.mkdir()被忽略// Assign random number to avoid audio file from overwriting Long tsLong = System.currentTimeMillis()/1000; // Specify a Location for the recorded file to be stored in the SD card mFileName = Environment.getExternalStorageDirectory().getAbsolutePath() + "/AudioRecordTest/"; File path = new File(mFileName); if(!path.exists()) { path.mkdir(); } mFileName += "/AudioRecordTest_" + tsLong.toString() + ".mp3";

如何解决这个警告信息。 如果有任何其他错误,请随意修改代码。

纠正我,如果我错了,但我希望(编译)警告消息真的说这个:

File.mkdir()的结果被忽略

… 或类似的东西。 它告诉你,你忽略了mkdir()调用的结果,告诉你是否创build了一个目录。

避免警告的一种方法是testing结果并采取适当的行动。 另一种方法是将结果简单地分配给一个临时variables,忽略它,并且(可能)稍后崩溃,因为该目录本来就不是被创build的。

(猜猜哪个解决scheme更好…)

如果有任何其他错误,请随意修改代码。

既然你问了…对于Javavariables名使用匈牙利符号是不好的风格。 Java是一种强types语言,其中所有variables都有明确的声明types。 你不应该需要一些可怕的标识符约定的精神拐杖来告诉你一个variables的types是什么意图。

正如@Stephen C所build议的,我以这种方式处理

1)

boolean isDirectoryCreated= path.mkdir();

并忽略“isDirectoryCreated”

2)(推荐)

boolean isDirectoryCreated=path.exists(); if (!isDirectoryCreated) { isDirectoryCreated= path.mkdir(); } if(isDirectoryCreated) { // do something }

3)

if (!path.exists()) { if(path.mkdir()){ // do something } }

如果您想忽略此警告,请在方法中添加以下内容:@SuppressWarnings(“all”)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值