4242|9

59

帖子

0

TA的资源

一粒金砂(初级)

楼主
 

WinCE下的文件写入问题 [复制链接]

为什么在SH4上创建了2个文件后,都想文件里写的话,只能最大写入4K,一个文件打开并写文件的话就可以超过4K,急待高手解惑!!
此帖出自WindowsCE论坛

最新回复

断言一下写文件失败位置  详情 回复 发表于 2008-11-18 13:39
点赞 关注
 

回复
举报

71

帖子

0

TA的资源

一粒金砂(初级)

沙发
 
CE有这样的Bug吗,显然是没有的!

可以确定是LZ的代码有问题,自己再仔细的查查看。
此帖出自WindowsCE论坛
 
 
 

回复

73

帖子

0

TA的资源

一粒金砂(初级)

板凳
 
代码没有问题的
_tfopen(fileName, nuTEXT("wb"));

fwrite(pBuff, size, count, (FILE*)pFile);
这里不断的数据写入文件...
发现每次写之前关文件打开后再写就没有4K的限制了
PS:我个人觉得可能是I/O Buffer的限制。

fclose((FILE*)pFile);
此帖出自WindowsCE论坛
 
 
 

回复

78

帖子

0

TA的资源

一粒金砂(初级)

4
 
我平台我写过好几个超过1M的都没有问题啊
此帖出自WindowsCE论坛
 
 
 

回复

70

帖子

0

TA的资源

一粒金砂(初级)

5
 
引用 3 楼 constantine 的回复:
我平台我写过好几个超过1M的都没有问题啊


所以我说是LZ代码的问题,因为写文件的人很多。如果有问题的,早就被发现啦!
此帖出自WindowsCE论坛
 
 
 

回复

74

帖子

0

TA的资源

一粒金砂(初级)

6
 
我可以肯定只有我一个人在写文件,其他人都没有对文件操作的,只是当只有一个文件IO读写的时候就可以写,并使文件大小超过4K,所以很奇怪。
此帖出自WindowsCE论坛
 
 
 

回复

77

帖子

0

TA的资源

一粒金砂(初级)

7
 
引用 5 楼 wwj5201984 的回复:
我可以肯定只有我一个人在写文件,其他人都没有对文件操作的,只是当只有一个文件IO读写的时候就可以写,并使文件大小超过4K,所以很奇怪。


可以肯定是你代码的问题,如果可以请将全部代码帖出来
此帖出自WindowsCE论坛
 
 
 

回复

73

帖子

0

TA的资源

一粒金砂(初级)

8
 
//打开文件部分,模块初始化时候打开
TCHAR sFilePath[NURO_MAX_PATH];
nuGetModuleFileName(NULL, sFilePath, NURO_MAX_PATH);
for(int i = nuTcslen(sFilePath) - 1; i >= 0; i--)
{
        if( sFilePath == nuTEXT('\\') )
        {
                sFilePath[i+1] = nuTEXT('\0');
                break;
        }
}
nuMemset( sFileLogGps, 0, sizeof(sFileLogGps) );
nuTcscat( sFileLogGps, sFilePath );
nuTcscat( sFileLogGps, nuTEXT("GPSLOG.TXT"));
g_pLogFile = nuTfopen( sFileLogGps , NURO_FS_WB );

//写文件部分,这里会不断写,直到系统关闭的时候
if ( g_pLogFile )
{
        nuFwrite( ReceiveCharBuf, ReceiveCharBufNum, 1,g_pLogFile );
}

//关闭,模块退出关闭
if ( g_pLogFile )
{
    nuFclose(g_pLogFile);
}
此帖出自WindowsCE论坛
 
 
 

回复

72

帖子

0

TA的资源

一粒金砂(初级)

9
 
写flash是需要时间的,而且你没判断写失败问题,既然不能确定函数调用成功,怎么能断定只能写4k?
你打开关闭之后再写,这个操作相当于留给了写flash的时间,自然能写入成功。
此帖出自WindowsCE论坛
 
 
 

回复

74

帖子

0

TA的资源

一粒金砂(初级)

10
 
断言一下写文件失败位置
此帖出自WindowsCE论坛
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/10 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表