此内容由EEWORLD论坛网友chenbingjy原创,如需转载或用于商业用途需征得作者同意并注明出处
第7章层递删截,通盘格空:文件,目录的删除及磁盘格式化。
文件删除的实现;
#ifdef ZNFAT_DELETE_FILE
UINT8 znFAT_Delete_File(INT8 *filepath)
{
UINT8 res=0;
struct FileInfo fi;
struct FDIesInSEC *pitems; //Ö¸ÏòÎļþĿ¼ÏîÉÈÇøÊý¾ÝµÄÖ¸Õë
struct FDI *pitem; //Ö¸ÏòÎļþĿ¼ÏîÊý¾ÝµÄÖ¸Õë
res=znFAT_Open_File(&fi,filepath,0,BOOL_TRUE);
if(res) return res;
while(!res) //´ò¿ªÎļþ³É¹¦
{
znFAT_Device_Read_Sector(fi.FDI_Sec,znFAT_Buffer); //¶ÁÈ¡ÎļþµÄÎļþĿ¼ÏîËùÔÚÉÈÇø
pitems=(struct FDIesInSEC *)znFAT_Buffer;
pitem=(pitems->FDIes)+fi.nFDI;
if(0!=fi.File_StartClust) Destroy_FAT_Chain(fi.File_StartClust); //Ïú»ÙÕûÌõ´ØÁ´
znFAT_Device_Read_Sector(fi.FDI_Sec,znFAT_Buffer); //¶ÁÈ¡ÎļþĿ¼ÏîËùÔÚµÄÉÈÇø
pitem->Name[0]=0XE5; //¸øÎļþĿ¼Ïî´òÉÏ"ÒÑɾ³ý"µÄ±ê¼Ç
pitem->HighClust[0]=pitem->HighClust[1]=0; //¿ªÊ¼´ØµÄ¸ß×ÖÇå0
znFAT_Device_Write_Sector(fi.FDI_Sec,znFAT_Buffer); //»ØдÉÈÇø
res=znFAT_Open_File(&fi,filepath,0,BOOL_TRUE);
}
znFAT_Close_File(&fi);
#ifdef RT_UPDATE_FSINFO
Update_FSINFO();
#endif
return ERR_SUCC;
}
#endif
删除的是dh.mp3。
此帖出自开发板测评专版论坛