当前位置:  技术问答>linux和unix

接收图片失真,多了十几个16进制数,一直找到不原因,请各位高手帮帮忙~~~~急啊

    来源: 互联网  发布时间:2016-04-10

    本文导语:     这里先谢谢了!!!!     我用linux系统下c发送一副图片到windows,是写入内存然通过串口用无线传输模块发送的,接收端接收到的图片失真,只能看到大框,并且多了十几个字节, 比如回车0d,空格32等,不知道...

   这里先谢谢了!!!!
    我用linux系统下c发送一副图片到windows,是写入内存然通过串口用无线传输模块发送的,接收端接收到的图片失真,只能看到大框,并且多了十几个字节,
比如回车0d,空格32等,不知道为什么会出现这种错误,我在串口初始话的时候已经定义了原始数据流发送,为什么会多出这些字符呢??
    恳请各位高手能给个思路!!!!

|
出现这个问题有很多可能,你应该一步一步排查,比如在数据发送前和接受到后立刻对比数据,观察是不是发送的原因。

我觉得图片本身出问题的可能性更大,即图片数据本身就是错。

曾经做过一个项目是用TCP传图片。当时图片传过去也变得乱七八糟,后来确定是这么个问题:BMP格式中一行数据必须对齐到4字节的边界上,比如24位位图,每行有三个点,那么数据格式如下:

[B1] [G1] [R1] [B2] [G2] [R2] [B3] [G3] [R3] [00] [00] [00]

[B1] [G1] [R1] [B2] [G2] [R2] [B3] [G3] [R3] [00] [00] [00]

[B1] [G1] [R1] [B2] [G2] [R2] [B3] [G3] [R3] [00] [00] [00]

每行最后的三个[00]是填充数据,使每一行都是4字节的整数倍。

    
 
 
 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • sock已连接,接收数据有问题,各位帮帮忙
  • socket发送端、接收端同一机器,kill掉接收端进程,发送端也被kill?
  • 如何知道接收到的广播包是从哪个网络端口接收到的?
  • recv 接收 ,接收空间不够大, 可以通过什么知道?
  • 发出SIGUSR1命令后,接收进程怎样定义接收后的动作
  • 设计一个嵌入式透明网关,从eth0接收到的数据发送到eth1,从eth0接收到的数据转发到eth1,用原始套接字做的,但是eth0接收到eth1的数据又发给了eth1,这样在两者之间形成循环,怎么办?
  • 在装有uclinux板中,怎么读取红外线接收器 接收到的数据
  • postfix 在内网可以正常接收与发送邮件,但向局外,不能接收与发送
  • sendmail,内部发送接收可以,当用外部的域名,无法发送和接收,如163账号。
  • 如何判断包已经接收完?
  • socket 接收数据问题
  • 红外设备发送接收程序设计
  • Web服务器/前端 iis7站长之家
  • 如何让程序接收底层数据?
  • 怎么实现Windows和Linux之间数据的接收发送
  • 关于串口接收的问题,一直很疑惑……
  • Linux下怎么用socket接收zip文件流?怎么把zip文件读成流?
  • 请问如何清除UDP接收缓存?????????????
  • 关于实时信号的传送,接收问题。
  • FTP接收文件的问题
  • 求助:UDP编程,无法接收广播数据包


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3