具体情况是这样的: 服务器端有好多xml文件有几个G,在客户端要下载下来,由于文件太大,若加上网络不好,就会下载失败. 考虑到xml文件压缩后会少的很多,就想在下载前将其压缩, 问题就在 怎样在客户端通过ftp协议将服务器端的xml文件压缩呢? 现在用的是commons-net 链接的 各位朋友都说说有啥好的解决方案莫
2条回答 默认 最新
- jiangguangxian 2011-11-26 15:24关注
这个从理论上讲不是一定不可以实现,而是较难实现,难在于现成的ftp服务器不提供这种功能,可以实现是因为有哪些开源的ftp服务 比如filezilla. 你可以通过修改源码支持在传输文件之前,加个压缩功能,这个在我们的项目中就有过调研,调研的结果是已经进行了一定的源码改动做到了,不过我们是在上传完成时做一些操作,你的是在下载时做一些操作,c++的东西主要是通过一些消息,你请求下载的时候肯定也是由消息的,你可以截获,然后写个压缩程序调用一下。
[quote]
1.#!/bin/sh //这是shell程序的开头部分,必须地。
2.tar -cvf filter.tar filter/ //解压 filter.tar 到 filter/文件夹下
3.ftp -n<<! // 启动ftp命令,并且使用非交互式(-n参数)就是不采用问答式的命令
4.open 10.70.193.33 // 打开10.70.193.33 这个ftp服务地址,就是连接服务。
5.user username password // 使用用户名和密码
6.binary // 传输文件是用二进制的方式。
7.prompt off // 禁用提示 (相当于bat中的@echo off)
8.cd /app/ngapp/data/bak // 进入 /app/ngapp/data/bak 目录
9.mput filter.tar // 将filter.tar 文件上传
10.close // 关闭连接
11.bye // 退出ftp命令行
[/quote]本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥60 更换迈创SOL6M4AE卡的时候,驱动要重新装才能使用,怎么解决?
- ¥15 让node服务器有自动加载文件的功能
- ¥15 jmeter脚本回放有的是对的有的是错的
- ¥15 r语言蛋白组学相关问题
- ¥15 Python时间序列如何拟合疏系数模型
- ¥15 求学软件的前人们指明方向🥺
- ¥50 如何增强飞上天的树莓派的热点信号强度,以使得笔记本可以在地面实现远程桌面连接
- ¥20 双层网络上信息-疾病传播
- ¥50 paddlepaddle pinn
- ¥20 idea运行测试代码报错问题