文件读写问题!

发布于 2022-09-22 10:45:57 字数 1170 浏览 20 评论 0

原帖由 liuhuizhangyi 于 2008-9-8 21:34 发表
我有一USB设备,在Linux下面也有了驱动,该驱动主要是用来收发(读写)数据的。该设备有一个要求就是每次读写的数据必须是1275字节,如果小于这个数,就无法读出。
经过验证如果直接往该设备文件写入字符数据, ...

1、写入文件的问题,不管是写入什么文件,用open打开该文件,都按照ascii码读取,读到一个缓冲区里,然后写入设备文件就可以了阿。

2、文件大小问题:必须是1275字节,你读的时候判断够不够这么大,够的话就直接写,当写到最后一次不够的时候,把内容写完后,再后面接着写一些填充字符,凑够1275字节就可以了,这样的话,当你读取设备文件的时候就需要作处理,把最后一次读取到的缓冲区里面的填充字符去掉。或者用linux下的系统调用lseek,当写完字符后,直接lseek到1275字节。

如果我的回答满意,给分吧。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(6

放赐 2022-09-29 10:45:57


爱莫能助
很奇怪的问题
有挑战性
望高人能够帮助你

旧城空念 2022-09-29 10:45:57

这个问题估计发在编程问题或嵌入式开发那边更好些。
这已经不属于新手问题了,期待高人解决

不羁少年 2022-09-29 10:45:57

这个应该用分片解决吧,不够的地方用空值填充。

塔塔猫 2022-09-29 10:45:57

哪里来的这么奇怪的设备,为什么会有这么奇怪的读写要求

浅笑轻吟梦一曲 2022-09-29 10:45:57

在写入的时候,如果不够用自定义符号补齐1275,
如果多了,就分两次写。

设置一个文件头说明该文件总大小,即存贮状况~

智商已欠费 2022-09-29 10:45:57

这个设备有点怪。。。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文