打印

ZLG/FS文件系统的BUG?

[复制链接]
3237|17
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
hedynasty|  楼主 | 2008-8-19 16:35 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
斑竹及各位:我的ARM7板子上用了ZLG/FS文件系统来对SD卡进行文件读写,在调试过程中有个怪问题大家帮忙看看:如果我在SD卡上建立一个.txt文本文档,用ZLG/FS的读写函数对这个文件进行复制,可以顺利运行,结果正确。可是当我把文本文档换成一个.html网页文件后(别的程序都不变),这个文件复制程序的结果有时正确(成功复制,在SD卡上产生一个内容一样的.html网页),有时的结果是错的(产生一个内容为空的网页),网上看到有人说ZLG/FS有一些BUG,请问我这个问题有可能是BUG吗?还是别的原因?谢谢!

相关帖子

沙发
sfrad32| | 2008-8-19 21:18 | 只看该作者

请使用<>,不会有此问题

使用特权

评论回复
板凳
hedynasty|  楼主 | 2008-8-20 11:29 | 只看该作者

解决了,但更郁闷

发现只有SD卡上的.html网页文件是用文件系统的读写函数建立的话,对他在进行复制才不会出错?如果是从别的地方靠到SD卡上的就不行,这是为什么?高手指点指点,谢谢!

使用特权

评论回复
地板
hedynasty|  楼主 | 2008-8-20 11:40 | 只看该作者

是这样吗:

ZLG/FS只能对.txt文本文档进行读写操作,如果是别的格式的文件(如.html文件)就得是利用它的读写函数建立的,它才能对他进行读写操作,否则如果是从电脑上靠到SD卡上的就不行。形象地说就是自己只认识自己写的东西,并能读写它,拷贝的就不认识,不能读写。高手指点一下,谢谢!

使用特权

评论回复
5
古道热肠| | 2008-8-20 11:56 | 只看该作者

仔细检查兼容性

良好的文件系统应该具有与PC进行数据交换的功能.就是说PC上建立的在SD卡的内容,在嵌入式系统上应该进行可读可写操作.

使用特权

评论回复
6
hedynasty|  楼主 | 2008-8-20 11:59 | 只看该作者

谢谢!

您能说具体一点如何“检查兼容性”吗?检查ZLG/FS的介绍说明?

使用特权

评论回复
7
hedynasty|  楼主 | 2008-8-21 09:55 | 只看该作者

程序大家帮看看,谢谢

用ZLG/FS的读写函数打开一个事先拷贝到SD卡上的.html网页文件,并把这个文件的内容复制到一个数组里,大家帮看看程序这样编对吗?程序如下:

char *FileName = "a:单片机.html";
uint8 WritFileData[430];
char buf1[4];
char buf[30];
HANDLE FHandle;

  
strcpy(buf1, "rw");     
strcpy(buf, FileName);
FHandle = OSFileOpen(buf, buf1);    
OSFileRead(WritFileData,430,FHandle);
OSFileClose(FHandle);

使用特权

评论回复
8
dld2| | 2008-8-21 10:06 | 只看该作者

瞎猜

文件名不要用中文。
后缀改成三字节。

例如“dpj.htm”

使用特权

评论回复
9
hedynasty|  楼主 | 2008-8-21 10:31 | 只看该作者

谢谢dld2

改了,还是不行,结果是ZLG/FS在SD卡上重新建了一个0字节的同名的文件,不知道为什么?

使用特权

评论回复
10
wlq_9| | 2008-8-21 12:57 | 只看该作者

8.3

文件名支持.

使用特权

评论回复
11
hedynasty|  楼主 | 2008-8-21 13:12 | 只看该作者

好像跟8.3文件名格式无关吧?

使用特权

评论回复
12
hedynasty|  楼主 | 2008-8-21 13:33 | 只看该作者

我错了,是文件格式的问题

当我把SD卡上的文件由.html网页文件换成.rar压缩文件后运行程序,结果正确。如果是这样,需要遵循8.3文件名格式的话,.html网页文件怎么办?按8楼说的只能改文件名,属性里的后缀还是“html”呀,怎么办?各位指点一下,谢谢!

使用特权

评论回复
13
dld2| | 2008-8-21 13:44 | 只看该作者

htm和HTML文件格式是相同的

使用特权

评论回复
14
hedynasty|  楼主 | 2008-8-21 13:51 | 只看该作者

谢谢dld2,

那我怎么改啊,在属性里把文件名改成“dpj.htm”?

使用特权

评论回复
15
dld2| | 2008-8-21 13:56 | 只看该作者

呵呵

向SD卡存储时,把文件名都改成你的FS支持的格式。具体怎么做方便我就不知道了。

使用特权

评论回复
16
hedynasty|  楼主 | 2008-8-21 14:02 | 只看该作者

太感谢dld2大哥了,

按您的指点搞定了,就是把程序里的html都改成htm就行了。
同样感谢古道热肠 ,wlq_9,和 sfrad32 。

使用特权

评论回复
17
hedynasty|  楼主 | 2008-8-21 14:28 | 只看该作者

同时SD卡上的网页文件也必须是htm格式的

使用特权

评论回复
18
dld2| | 2008-8-21 14:31 | 只看该作者

呵呵

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

73

主题

458

帖子

0

粉丝