STM32的FatFS文件系统中如何创建和批量命名文件?

2025-06-27 14:19:29
推荐回答(2个)
回答1:

给你个我写的样板。。。

char pch[40];
short inum=0,bmpres;
FIL bmpfsrc;
do
{
sprintf((char*)pch,"0:ScreenShort/SS_%d.bmp",inum++);
if(inum>500)return;
bmpres = f_open( &bmpfsrc,(char*)pch, FA_CREATE_NEW | FA_WRITE);
}while(bmpres!=FR_OK);
BmpScreen_short(0,0,400,240,&bmpfsrc);
f_close(&bmpfsrc);
我这个是截图用的一部分代码,功能是把当前截图保存到内存卡上面,内存卡上面已经有一部分截图了,所以当前截图的名字需要不和以前的重复,我用了一个while来一直创建,知道创建成功为止。图片命名里面有个变量,比如第一张截图是SS_0.bmp,第二个截图就是SS_1.bmp。
假设内存卡上面已经有SS_0.bmp和SS_1.bmp,那么,当前截图的名字就是SS_2.bmp。你那个比我这个还简单,希望能够给你提示。

回答2:

unsigned char name[7]={"000.txt"}
for(i=0;i<9;i++)
{
name[2]=0X30+i+1; //转成ASCII字符
f_open(&file,name, FA_WRITE|FA_OPEN_ALWAYS);
//在下面编写该文件的操作;
}