ecos下的文件读写问题

来源:互联网 发布:效果图制作是什么软件 编辑:程序博客网 时间:2024/05/19 08:44
在VC下写了个读写文件的类,主要用于实现INI文件格式的那种功能。测试通过,放在ecos工程下,发现刚写进去的再读出来就不对。在ecos环境下仔细测试了一下,发现原因如下:

(1)板子上的ini文件是数据里边原来预先手工建立的,因为windows建立的文件在保存时总会被保存成一定的格式(根据需要指定),通过读取文件内容可以发现在每个文件头隐藏着一些文件格式标识。而我写的文件是完全纯文本格式的用ASCII字符写进去的(现在还不清楚原来那个文件的格式和我写的有什么不同,反正总是找不到section,按照最初的想法是在同一个section下写数据,结果因为新添加的section都是在文件尾,所以出现了多个相同的section,这是错误的)。首先确信我写的ini类是没有问题的,我猜应该是由于操作系统环境的差异造成。

(2)在ecos下用C++标准库函数fopen以w+模式打开文件时,按照我的想法是如果文件不存在则建立一个新文件,结果却总是返回空的文件指针,但是VC下是可以这样做的,同样是标准库,ecos下当然可以用C++标准库了,csdn上也是这样说的,但是为什么不行呢?我想可能kernel不一样的原因。于是只好改了一下,以w模式打开后将其关闭再以r模式打开。

最后,只需将板子上的原先手工建立的ini文件删除,就OK了。呵呵!


原创粉丝点击