- 论坛徽章:
- 0
|
5可用积分
用如下的struct来传送
struct send_data{
int id;
size_t size;
char sdata[MAXSIZE];
}__attribute__ ((__packed__));
程序输出如下,可以看到,包顺序没有错, 每次发送数据大小和接收数据大小也一致
[client:]*************begin upload****************
[client:]rlen: 2048, sdata len: 2048, id: 0
[client:]rlen: 2048, sdata len: 2048, id: 1
[client:]rlen: 2048, sdata len: 2048, id: 2
[client:]rlen: 2048, sdata len: 2048, id: 3
[client:]rlen: 2048, sdata len: 2048, id: 4
[client:]rlen: 2048, sdata len: 2048, id: 5
[client:]rlen: 2048, sdata len: 2048, id: 6
[client:]rlen: 2048, sdata len: 2048, id: 7
[client:]rlen: 2048, sdata len: 2048, id: 8
[client:]rlen: 2048, sdata len: 2048, id: 9
[client:]rlen: 2048, sdata len: 2048, id: 10
[client:]rlen: 2048, sdata len: 2048, id: 11
[client:]rlen: 2048, sdata len: 2048, id: 12
[client:]rlen: 984, sdata len: 984, id: 13
[client:]************* end upload ****************
{server:}^^^^^^^^^^^^begin recv^^^^^^^^^^^^
{server:}sdata len: 2048, id: 0, write len: 2048
{server:}2056, sdata len: 2048, id: 1, write len: 2048
{server:}sdata len: 2048, id: 2, write len: 2048
{server:}sdata len: 2048, id: 3, write len: 2048
{server:}sdata len: 2048, id: 4, write len: 2048
{server:}sdata len: 2048, id: 5, write len: 2048
{server:}sdata len: 2048, id: 6, write len: 2048
{server:}sdata len: 2048, id: 7, write len: 2048
{server:}sdata len: 2048, id: 8, write len: 2048
{server:}sdata len: 2048, id: 9, write len: 2048
{server:}sdata len: 2048, id: 10, write len: 2048
{server:}sdata len: 2048, id: 11, write len: 2048
{server:}sdata len: 2048, id: 12, write len: 2048
{server:}sdata len: 984, id: 13, write len: 984
{server:}^^^^^^^^^^^end recv^^^^^^^^^^^^^^^
发送imgload.jpg, 接收存为文件 temp
最后 ls -l 可以看到两个文件大小是一样的 27608字节
-rw-r--r-- 1 silviasun users 27608 2008-09-17 11:10 imgload.jpg
-rw-r--r-- 1 silviasun users 27608 2008-09-17 16:49 temp
可是我把temp文件下载到windows系统下后打开图片,却显示"没有预览"
为何呢........... |
|