完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
/* 为指定文件设置创建日期和时间 */
/* 输入参数: 原始文件名在iFileName中, 新的创建日期和时间: iCreateDate, iCreatetime */ /* 返回状态码: USB_INT_SUCCESS = 设置成功, 其它状态码参考CH376INC.H */ UINT8SetFileCreateTime( PUINT8 iFileName, UINT16 iCreateDate, UINT16 iCreateTime ) { UINT8s; s = CH376FileOpen( iFileName ); /* 打开文件 */ mStopIfError( s ); if ( s == USB_INT_SUCCESS ) { /* 文件读写操作等... */ s = CH376DirInfoRead( ); /* 读取当前文件的目录信息FAT_DIR_INFO,将相关数据调到内存中 */ mStopIfError( s ); if ( s == USB_INT_SUCCESS ) { buf[0] = (UINT8)iCreateTime; /* 文件创建的时间,低8位在前 */ buf[1] = (UINT8)(iCreateTime>>8); /* 文件创建的时间,高8位在后 */ CH376WriteOfsBlock( buf, STRUCT_OFFSET( FAT_DIR_INFO, DIR_CrtTime ), 2 ); /* 向内部缓冲区偏移地址DIR_CrtTime写入2个字节 */ buf[0] = (UINT8)iCreateDate; /* 文件创建的日期,低8位在前 */ buf[1] = (UINT8)(iCreateDate>>8); /* 文件创建的日期,高8位在后 */ CH376WriteOfsBlock( buf, STRUCT_OFFSET( FAT_DIR_INFO, DIR_CrtDate ), 2 ); /* 向内部缓冲区偏移地址DIR_CrtDate写入2个字节 */ s = CH376DirInfoSave( ); /* 保存文件的目录信息 */ if ( s == USB_INT_SUCCESS ) { /* 成功修改并保存 */ /* 文件读写操作等... */ } mStopIfError( s ); } CH376FileClose( FALSE ); /* 关闭文件 */ } return( s ); } s=SetFileCreateTime("/TEST.TXT ", MAKE_FILE_DATE( 2022,7, 24 ), MAKE_FILE_TIME( 20, 13, 30)); 大家好,调用这个函数修改时间,最后return是ox14,文件日期还是2004.1.1,请问有可能是什么原因? 我是按照EXAM11进行的,能修改文件名,就是日期修改不了,文件内容也能正常读写,请问大家可能是什么原因? |
|
相关推荐
1个回答
|
|
您好,0x14的返回值表示文件已经打开,您可以判断一下,您是不是之前对这个文件操作后,没有File_close,导致调用修改的创建时间的函数的时候,返回了这个错误。
|
|
|
|
只有小组成员才能发言,加入小组>>
467 浏览 1 评论
CH579M+RT-Thread,RTC从Sleep模式唤醒失败是什么原因?
2871 浏览 2 评论
2359 浏览 1 评论
810浏览 2评论
CH569通过HSPI实现USB3.0和FPGA高速双向通讯
633浏览 1评论
494浏览 1评论
CH32F103C8T6使用当前官网上的CDC例程会出现设备描述符请求失败
358浏览 1评论
632浏览 1评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-22 20:30 , Processed in 1.009688 second(s), Total 79, Slave 62 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号