ftp-Response OutputStream 输出图片

问题描述

Response OutputStream 输出图片
try{
    int reply;
    ftpClient.connect(ip,Integer.parseInt(port));
    ftpClient.login(userName,passWord);
    ftpClient.setBufferSize(1024);
    ftpClient.setFileType(FTPClient.BINARY_FILE_TYPE);
    reply = ftpClient.getReplyCode();
    if(!....){
    ....从ftp服务器上下载图片文件 到本地
    }
    File localFile = new File(localPath+"/"+fileName);
    OutputStream os = new FileOutputStream(localFile);
    if(ftpClient.retrieveFile(fileName,os)){
        //下载到本地硬盘上的图片是能显示的
        response.reset();
        String name = "test.jpg";
        response.reset();
        response.setHeader("Content-Disposition",....);
        response.setContentType("image/jpg");
        String str = os.toString();
        ServletOutputStream sos = response.getOutputStream();
        sos.write(str.getBytes());
        sos.flush();
        sos.close();
        //错误描述:
        ftp下载到本地磁盘,图片能正常显示
        通过response,返回给浏览器,再点击下载或者查看,就无法正常显示,但是下载下来的文件是有字节的。求大神指导一下,该如何处理?
    }
}

解决方案

意思是下载到本地了,就是不能显示?

File localFile = new File(localPath+"/"+fileName);//这个地方改为绝对路径 试试
同样思路,用js
你搜一下 在浏览器显示本地图片,使用js显示,这个方式我用过,绝对可行。

时间: 2024-12-24 20:30:00

ftp-Response OutputStream 输出图片的相关文章

如何在SQL Server中保存和输出图片

server 建表 为了试验这个例子你需要一个含有数据的table(你可以在现在的库中创建它,也可以创建一个新的数据库),下面是它的结构: Column Name Datatype Purpose ID Integer identity column Primary key IMGTITLE Varchar(50) Stores some user friendly title to identity the image IMGTYPE Varchar(50) Stores image cont

在SQL Server中保存和输出图片

server 介绍 有时候我们需要保存一些binary data进数据库.SQL Server提供一个叫做image的特殊数据类型供我们保存binary data.Binary data可以是图片.文档等.在这篇文章中我们将看到如何在SQL Server中保存和输出图片. 建表 为了试验这个例子你需要一个含有数据的table(你可以在现在的库中创建它,也可以创建一个新的数据库),下面是它的结构: Column Name Datatype Purpose ID Integer identity c

jsp 输出图片 blob.getBytes()问题

问题描述 jsp 输出图片 blob.getBytes()问题 response.setContentType("image/jpeg"); String userName = request.getParameter("userName"); Class.forName("oracle.jdbc.driver.OracleDriver"); String url = "jdbc:oracle:thin:@127.0.0.1:1521:

PHP header()输出图片缓存

  很多开发中,我们试图使用header("Content-type: image/jpeg");来 输出图片,试图用一些php的图像处理技术,让输出图片更加智能和动感.但我们常常遇到新的问题,除非你规定不同的URL结构,并采用服务器技术将图片缓 存,否则很有可能这些输出图片会消耗大量的流量.怎么把它们缓存起来,下次用户访问的时候调用缓存呢?(前提是你的这个图片希望保持不变) 代码如下   // put this above any php image generation code:

win7-nginx + ftp 实现浏览器访问图片

问题描述 nginx + ftp 实现浏览器访问图片 尽量简单点,win7下通过url能单独的访问到图片就行了! 求conf配置代码!! 解决方案 解决方案二: http://www.ithao123.cn/content-10812821.html

PHP使用header()输出图片缓存实例_php技巧

本文实例讲述了PHP使用header()输出图片缓存的方法.分享给大家供大家参考.具体分析如下: 在我们生成验证码时会需要直接输入图片,通常会使用到header("Content-type: image/jpeg");来实现,这里就来简单介绍一下. 很多开发中,我们试图使用header("Content-type: image/jpeg");来 输出图片,试图用一些php的图像处理技术,让输出图片更加智能和动感.但我们常常遇到新的问题,除非你规定不同的URL结构,并

response.getoutputstream 输出文件流下载时文件损坏

问题描述 response.getoutputstream 输出文件流下载时文件损坏 response.getoutputstream 输出文件流下载时文件损坏 解决方案 原文件既损坏,下载文件片段不全,数据处理不当

Ajax中Response.Write输出js脚本出错的解决方案

Ajax中Response.Write输出js脚本出错的解决方案 Ajax 3.5是不是有改动.后来经过尝试将ScriptManager.RegisterStartupScript(updatePanel1, typeof(UpdatePanel), "aaa", "<script>alert('数据添加成功!')</script>",true);中最后的true变为ScriptManager.RegisterStartupScript(up

php 动态输出图片 http header 304 状态

什么是304 状态 如果客户端发送了一个带条件的GET 请求且该请求已被允许,而文档的内容(自上次访问以来或者根据请求的条件)并没有改变,则服务器应当返回这个304状态码.简单的表达就是:客户端已经执行了GET,但文件未变化. php 动态输出图片为什么要输入304 客户端是怎么知道这些内容没有更新的呢?其实这并不是客户端的事情,而是你服务器的事情,大家都知道服务器可以设置缓存机制,这个功能是为了提高网站的访问速度,当你发出一个GET请求的时候服务器会从缓存中调用你要访问的内容,这个时候服务器就