java本地可以发到linux不行,java 使用 ftp 在windows环境下可以正常下载文件,在linux环境下不行...
windows环境下使用
public static void dowmloadFtpWindos(String fileUuid, HttpServletRequest request,HttpServletResponse response) {
LmpFileInfo finfo = lmpFileInfoServiceClient.getByUuid(fileUuid);
String dfname = processFileName(request, finfo.getName());
response.setContentType("multipart/form-data;charset=UTF-8");
response.setHeader("Content-Disposition", "attachment;fileName=" + dfname);
FtpUtil ftpUtil = new FtpUtil();
try {
String saveurl = finfo.getSaveurl();
String targetPath = "";
String fileName = "";
if (saveurl != null && saveurl.lastIndexOf('/') > 0) {
targetPath = finfo.getSaveurl().substring(0, saveurl.lastIndexOf('/'));
fileName = finfo.getSaveurl().substring(saveurl.lastIndexOf('/') + 1);
}
ftpUtil.downFile(targetPath,fileName,response);
} catch (Exception e) {
e.printStackTrace();
} finally {
ftpUtil.disConFtp();
}
}
Lunix下使用
public static String dowmloadFtpLunix(String fileUuid, HttpServletRequest request, HttpServletResponse response) {
LmpFileInfo finfo = lmpFileInfoServiceClient.getByUuid(fileUuid);
String dfname = processFileName(request, finfo.getName());
response.setContentType("multipart/form-data;charset=UTF-8");
response.setHeader("Content-Disposition", "attachment;fileName=" + dfname);
FtpUtil ftpUtil = new FtpUtil();
try {
FTPClient ftp = ftpUtil.getFtpClient();
// 设置PassiveMode传输
ftp.enterLocalPassiveMode();
// 设置以二进制流的方式传输
ftp.setFileTransferMode(FTP.STREAM_TRANSFER_MODE);
ftp.setFileType(FTP.BINARY_FILE_TYPE);
String saveurl = finfo.getSaveurl();
String targetPath = "";
String fileName = "";
if (saveurl != null && saveurl.lastIndexOf('/') > 0) {
targetPath = finfo.getSaveurl().substring(0, saveurl.lastIndexOf('/'));
fileName = finfo.getSaveurl().substring(saveurl.lastIndexOf('/') + 1);
}
ftp.changeWorkingDirectory(targetPath);
InputStream input = ftp.retrieveFileStream(new String(fileName.getBytes("GBK"),"ISO-8859-1"));
OutputStream out = response.getOutputStream();
int buf = -1;
while ((buf = input.read()) != -1) {
out.write(buf);
}
out.flush();
input.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} finally {
ftpUtil.disConFtp();
}
// 返回值要注意,要不然就出现下面这句错误!
// java+getOutputStream() has already been called for this response
return null;
}
java本地可以发到linux不行,java 使用 ftp 在windows环境下可以正常下载文件,在linux环境下不行...相关推荐
- python下载文件传到服务器_windows上python上传下载文件到linux服务器指定路径【转】...
从windows上传文件到linux,目录下的文件夹自动创建 #!/usr/bin/env python # coding: utf-8 import paramiko import datetime ...
- linux用sz下载文件夹,linux上很方便的上传下载文件工具rz和sz使用介绍
一般来说,linux服务器大多是通过ssh客户端来进行远程的登陆和管理的,使用ssh登陆linux主机以后,如何能够快速的和本地机器进行文件的交互呢,也就是上传和下载文件到服务器和本地: 与ssh有关 ...
- linux 传文件夹,linux下上传下载文件夹的方法
Linux下目录复制:本机->远程服务器 scp -r /home/shaoxiaohu/test1 zhidao@192.168.0.1:/home/test2 test1为源目录,test2 ...
- 过滤Linux下不同大小的文件,linux查找当前目录下 M/G 大小的文件,删除Linux下指定大小的文件
过滤Linux下不同大小的文件,linux查找当前目录下 M/G 大小的文件,删除Linux下指定大小的文件 find ./ -type f -size +1G| xargs rm 在清理系统日志文件 ...
- 如何在linux服务器下载文件夹,linux服务器怎么下载文件到本地
linux服务器怎么下载文件到本地 发布时间:2020-06-16 12:08:20 来源:亿速云 阅读:318 作者:鸽子 1.使用scp命令scp /home/work/source.txt wo ...
- Linux 下离线手动下载安装 C++ 开发环境
1.前言 本人使用的操作系统是 Fedora 24. 1.1 在线安装软件的方法 Linux 下我们习惯了使用软件包管理器来安装我们需要的软件,比如 Red Hat 公司的 Fedora.RHEL(R ...
- linux重新下载文件命令,linux下载服务器上的文件命令-sz
C# Mvc异常处理过滤器 using System; using System.Text; using EMS.Domains.Core; using System.Web.Mvc; using J ...
- 上传下载文件到Linux服务器
转自链接:https://blog.csdn.net/drdongshiye/article/details/89430535 Mac的终端是十分强大 , 可以通过命令进行上传下载 下载文件夹 scp ...
- 使用putty连接并上传和下载文件到linux服务器
目录 一.连接到linux 二.上传和下载文件 putty下载地址:https://putty.en.softonic.com/?ex=MOB-575.6 安装完后会看到如下的目录文件 一.连接到li ...
- ssh scp 从windows免密码下载文件到linux
在linux主机(ssh客户端),通过ssh-keygen在建立SSH keys # ssh-keygen -t rsa (连续三次回车,即在本地生成了公钥和私钥,不设置密码) 将在linux主机的当 ...
最新文章
- 如何快速实现HTML编辑器.NET组件
- iOS 流式播放音频文件
- 全国大学生智能汽车竞赛-讯飞赛道线下赛开始报名啦!
- 用亲和性分析方法推荐电影
- 【STM32】ESP8266 AT指令
- Mysql(8)——as和distinct和where的用法
- SpringBoot在项目中基本配置设置
- web版本 开源压测工具_Web压测工具之Webbench和http_load
- 防火墙 规则与链的分类
- c语言图书管理系统登录系统,C语言图书管理系统设计代码.doc
- ideaIU-2018.3.1安装及激活方法-百度网盘分享
- java calendar星期几_正确获取星期几(Calendar.DAY_OF_WEEK)
- 腾讯云短信服务报错FailedOperation.TemplateIncorrectOrUnapproved
- 人机交互-任务4:图形交互界面的设计(web)
- 集成建行龙支付(2019.01.24更新)
- 零基础搭建外卖优惠券返利CPS小程序教程
- mysql查询表升序降序_创建一个按钮,对MYSQL查询进行升序和降序排序
- Grub Rescue恢复
- ChainZ Arena攻略+全红卡评分
- 解决高德地图api叠加Imagelayer播放雷达图闪烁
热门文章
- R语言观察日志(part5)--利用readr和readxl包读写数据
- GIT项目管理工具(part10)--分支管理
- 好想学python怎么玩_Python 应该怎么学?
- 基于 Angular 的企业级 Web 应用服务器端渲染的推荐建构
- SAP UI5 视图控制器 View Controller 的生命周期方法 - Lifecycle methods
- 关于 SAP 产品 UI 的搜索引擎优化 SEO - Search Engine Optimization
- Angular 如何使用 InjectionToken 的方式得到当前 location 信息
- SAP Spartacus pop over 元素的单元测试
- scss 里的 Mixins 用法介绍
- SAP Spartacus delivery mode continue button enable与否的逻辑