[mw_shl_code=c,true]int res;
int a;
DIR CSV;
FIL fdst;
UINT br, bw; // File R/W count
BYTE buffer[512]; // file copy buffer
f_mount(fs[0],"0:",1); //挂载SD卡
res=f_open(&fdst,"0:/Test2.CSV",FA_CREATE_NEW | FA_WRITE);
printf( "\r\n Test2 %x", res);
if (res == FR_OK)
{
/* 将缓冲区的数据写到文件中 */
res = f_write(&fdst, OneLine1, sizeof(OneLine1), &bw);
res = f_write(&fdst, ChangeSpace, sizeof(ChangeSpace), &bw);
res = f_write(&fdst, OneLine2, sizeof(OneLine2), &bw);
res = f_write(&fdst, ChangeLine, sizeof(ChangeLine), &bw);
res = f_write(&fdst, TowerLine1, sizeof(TowerLine1), &bw);
res = f_write(&fdst, ChangeSpace, sizeof(ChangeSpace), &bw);
res = f_write(&fdst, TowerLine2, sizeof(TowerLine2), &bw);
res = f_write(&fdst, ChangeLine, sizeof(ChangeLine), &bw);
printf( "\r\n 文件创建成功 \n" );
/*关闭文件 */
f_close(&fdst);
}
else if ( res == FR_EXIST )
{
printf( "\r\n 文件已经存在 \n" );
}[/mw_shl_code]
参考代码取自原子哥《实验41 图片显示实验》。
本实验目的:数据以CSV格式保存到SD卡;
问题:
文件名如果是中文,那么res=f_open(&fdst,"0:/Test2.CSV",FA_CREATE_NEW | FA_WRITE);返回值是FR_INVALID_NAME(路径名格式无效);
文件名是英文“Test”,一切都OK。请指教,谢谢!!! |