您好,欢迎来到[编程问答]网站首页   源码下载   电子书籍   软件下载   专题
当前位置:首页 >> 编程问答 >> 硬件/嵌入开发 >> Fatfs文件系统创建新文件夹及在该路径下创建文件

Fatfs文件系统创建新文件夹及在该路径下创建文件

来源:网络整理     时间:2016/9/28 1:15:03     关键词:

关于网友提出的“ Fatfs文件系统创建新文件夹及在该路径下创建文件”问题疑问,本网通过在网上对“ Fatfs文件系统创建新文件夹及在该路径下创建文件”有关的相关答案进行了整理,供用户进行参考,详细问题解答如下:

问题: Fatfs文件系统创建新文件夹及在该路径下创建文件
描述:

Fatfs文件系统STM32下应用创建文件

硬件:STM32F103,时钟芯片
编译环境:Keil
问题描述:用到了Fatfs文件系统。通过获取时钟的时间,想每天都创建一个新的文件夹,文件夹名字就是当天的日期(格式:年-月-日)。装置功能中有检测部分,遇到特殊的情况,在当天的文件夹下创建一个.txt文件,该文件的名字是当时时间(格式:时-分-秒.txt)。因为Fatfs利用f_mkdir,f_open分别创建文件夹和文件时,均需要const char*类型的参数;而时间取出来,我已由BCD转为int。
1、怎么将时间转为char类型的。
2、因为f_open是要求绝对路径的,所以需要写明路径,如何处理。(未开启相对路径,因为开启后,有些文件系统操作功能无法用)
举例:比如今天是2016-8-2,时间是6-25-30,如果想创建文件夹,就要写f_mkdir("2016-8-2");
            要创建文件,就得f_open(&ftxt,"/2016-8-2/6-25-30",FA_CREATE_ALWAYS);
但是日期和时间一直都在变化,我想保存到数组里mytime_Date和mytime_Time里,最后就能直接f_mkdir(mytime_Date);f_open(&ftxt,/mytime_Date/mytime_Time,FA_CREATE_ALWAYS)。
请有经验的朋友指导下。

函数原型:FRESULT f_open (
FIL *fp, /* Pointer to the blank file object */
const char *path, /* Pointer to the file name  需要绝对路径*/
BYTE mode /* Access mode and file open mode flags */
)
FRESULT f_mkdir (
const char *path /* Pointer to the directory path */
)


解决方案1:


sprintf (dir_path,  "/%d-%d-%d",          year, month, day);
sprintf (file_path, "/%d-%d-%d/%d-%d-%d", year, month, day, hour, minute, second);


以上介绍了“ Fatfs文件系统创建新文件夹及在该路径下创建文件”的问题解答,希望对有需要的网友有所帮助。
本文网址链接:http://www.codes51.com/itwd/3996643.html

相关图片

相关文章