向SDcard中,创建文件夹并向其中保存文件

 

 

 


 今天在编写向SDcard中,创建文件夹并向其中保存文件的过程中出现个一系列的问题 在此做下总结:


1.首先要注意权限问题


<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"></uses-permission>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"></uses-permission>


2.file.createNewFile() 方法出现的问题


会出现No such file ..的问题


需要注意的是:要先对设计的文件路径创建文件夹 , 然后在对文件进行创建


String local_file = Environment.getExternalStorageDirectory().getAbsolutePath()+"/down/";
File f = new File(local_file);
if(!f.exists()){
f.mkdirs();
}
String local_file = f.getAbsolutePath()+"/"+filename;


File f = new File(local_file);


try {
   if(!file.createNewFile()) {
       System.out.println("File already exists");
   } 
} catch (IOException ex) {
   System.out.println(ex);
}


这样就会避免问题的出现 这是现阶段我发现的问题。

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要使用OV2640拍摄图片并将其保存文件夹,需要进行以下步骤: 1. 初始化OV2640摄像头 2. 配置OV2640摄像头参数,如分辨率、帧率等 3. 初始化SD卡并创建一个文件夹用于存储图片 4. 拍摄图片并将其保存SD文件夹 以下是一个简单的示例代码,它演示了如何使用OV2640拍摄图片并将其保存SD文件夹: ```c #include "ov2640.h" #include "sdcard.h" #include "ff.h" /* 定义文件夹名称 */ #define FOLDER_NAME "images" /* 定义图片名称前缀 */ #define FILE_PREFIX "IMG_" /* 定义图片名称后缀 */ #define FILE_SUFFIX ".jpg" /* 定义图片编号 */ static uint32_t img_num = 0; /* 定义SD文件系统对象 */ FATFS fs; /* 定义文件夹路径 */ char folder_path[64]; /* 初始化OV2640摄像头 */ ov2640_init(); /* 配置OV2640摄像头参数 */ ov2640_config(800, 600, 2, 0); /* 初始化SD卡 */ sdcard_init(); /* 挂载SD文件系统 */ f_mount(&fs, "0:/", 1); /* 创建文件 */ sprintf(folder_path, "0:/%s", FOLDER_NAME); f_mkdir(folder_path); /* 拍摄图片并保存 */ while (1) { /* 定义文件名称 */ char file_name[64]; sprintf(file_name, "%s%s%d%s", folder_path, FILE_PREFIX, img_num, FILE_SUFFIX); /* 拍摄图片 */ ov2640_snapshot(file_name); /* 增加图片编号 */ img_num++; /* 延时一段时间 */ HAL_Delay(1000); } ``` 在上述代码,使用`ov2640_init()`函数初始化OV2640摄像头,使用`ov2640_config()`函数配置摄像头参数。使用`sdcard_init()`函数初始化SD卡,并使用`f_mount()`函数挂载SD文件系统。使用`f_mkdir()`函数创建一个文件夹,用于存储图片。在while循环,使用`ov2640_snapshot()`函数拍摄图片,并将其保存SD文件夹。在每次拍摄图片后,增加图片编号并延时一段时间。 需要注意的是,上述代码使用了FatFs文件系统库,需要在工程添加FatFs的源代码和头文件,并在Makefile链接相应的库文件。另外,需要根据实际情况修改代码的一些参数,如分辨率、帧率、文件夹名称等。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值