前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >中文文件下载

中文文件下载

作者头像
马克java社区
修改于 2021-10-11 02:25:01
修改于 2021-10-11 02:25:01
8340
举报
文章被收录于专栏:java大数据java大数据

2.中文文件下载:

假 如你的文件名是英文的话,jspsmartupload就可以胜任。但如果你的文件名是中文的话,就只能用下面的方法。这时jspsmartupload 是不能胜任的。以下例子能下载中文文件名(在firefox,ie8,360都通过测试, eclipse内置浏览器不行):

例 1.2.1

<%@ page contentType="text/html; charset=GBK" %>

<html>

<body >

<A href="http://localhost:8080/ServletHello/MarkToWinServlet?file=ibatis环境搭建.ppt">下 载ibatis环境搭建.ppt</A>

</body>

</html>

package com;

import java.io.IOException;

import javax.servlet.ServletException;

import javax.servlet.http.HttpServlet;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

public class ServletHello1 extends HttpServlet {

protected void doGet(HttpServletRequest request,

HttpServletResponse response) throws IOException {

java.io.BufferedInputStream bis = null;

java.io.BufferedOutputStream bos = null;

try {

String filenameiso = request.getParameter("file");

System.out.println("filenameiso is " + filenameiso);

String filenamegbk = new String(filenameiso.getBytes("iso8859-1"), "GBK");

System.out.println("filenameutf is " + filenamegbk);

response.setContentType("application/x-msdownload");

response.setHeader("Content-disposition", "attachment; filename="

+ filenameiso);

System.out.println("after setHeader");

bis = new java.io.BufferedInputStream(new java.io.FileInputStream(

getServletContext().getRealPath("file/" + filenamegbk)));

bos = new java.io.BufferedOutputStream(response.getOutputStream());

System.out.println("after new bis bos ");

byte[] buff = new byte[2048];

int bytesRead;

while (-1 != (bytesRead = bis.read(buff, 0, buff.length))) {

bos.write(buff, 0, bytesRead);

}

System.out.println("after while ");

} catch (Exception e) {

e.printStackTrace();

} finally {

if (bis != null)

bis.close();

if (bos != null)

bos.close();

}

System.out.println("finish ");

}

}

更多请看:https://blog.csdn.net/qq_44638460/article/details/104157358

本文系转载,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文系转载,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
SpringMVC上传下载
1、需要导入jar包:ant.jar、commons-fileupload.jar、connom-io.jar。当然spring jar包不可缺少的哦  我这里用的是spring+springmvc+hibernate  可以到官网上直接下载springmvcjar即可
用户7705674
2021/09/23
4820
java实现excel表格导入数据库表「建议收藏」
导入excel就是一个上传excel文件,然后获取excel文件数据,然后处理数据并插入到数据库的过程
全栈程序员站长
2022/09/14
3.1K0
java实现excel表格导入数据库表「建议收藏」
SpringMVC当中请给出一个下载的例子,文件名必需是中文
4.文件下载 例4.1: <%@ page contentType="text/html; charset=GBK" %> <html> <body > <A href="http://localho
马克java社区
2019/09/29
5870
SpringMVC当中请给出一个下载的例子,文件名必需是中文
【Java 基础篇】Java字节缓冲流详解
在Java中,字节缓冲流是一种用于提高字节流读写效率的流。它们通过在内存中创建缓冲区,减少了与底层设备的直接交互次数,从而提高了读写的速度。本文将详细介绍Java字节缓冲流的原理、使用场景和常用类,并提供一些示例代码。
繁依Fanyi
2023/10/12
4120
java使用TCP,由客户端向服务端传输图片,(电脑与电脑)或(同一台电脑)
概述 1.完成图片的复制,与客户端向服务端传输文字相差不大。都是: 1.1基于TCP协议的服务器端 1.创建服务器套接字,绑定端口号(new ServerSocket(1008)) 2.侦听客户连接,返回socker(listener.accept()) 3.获输入、输出流 4.处理数据 5.关闭资源 1.2基于TCP协议的客户端 1.创建客户端套接字,指定服务器的地址和端口号
2020/10/23
9110
文件下载java实现代码
2. 注意getServletContext().getMimeType(fileName),读取文件类型
大师级码师
2021/09/19
5630
用java实现歌曲串烧高速版(SequenceInputStream的使用)
基本代码如下:(代码注释部分不用看,一步步学习SequenceInputStream用的)
砖业洋__
2023/05/06
2540
用java实现歌曲串烧高速版(SequenceInputStream的使用)
技术汇总:第一章:使用poi实现表单下载成xls文件并打印
更多内容请见原文,原文转载自:https://blog.csdn.net/weixin_44519496/article/details/120575483
马克社区
2023/01/31
2760
技术汇总:第一章:使用poi实现表单下载成xls文件并打印
用缓冲字节流,复制一个照片
要想两个图片的大小是一样的必须在 bos.write(buf,0,len);里面加0,len。 防止到最后一次循环的时候,复制整个数组
2020/10/23
5330
用缓冲字节流,复制一个照片
JavaWeb核心篇(2)——Request和Response
上篇文章中提及到了Servlet,在Servlet中我们主要继承了HTTPServlet类,在HTTPServlet类中我们会接触到两个对象
秋落雨微凉
2022/10/25
4770
JavaWeb核心篇(2)——Request和Response
E015Web学习笔记-Request和Respons(三)
如果超链接指向的资源可以被浏览器解析,则会展示在浏览器里面,否则弹出下载框,询问下载;
訾博ZiBo
2025/01/06
440
E015Web学习笔记-Request和Respons(三)
Java---文件的切割与合并,已经实现图形界面(工具)
上次只写了特定目录下的文件切割与合并,有点遗憾, 这次,我写了一个图形界面来实现对文件的切割与合并。
谙忆
2021/01/21
7820
Java---文件的切割与合并,已经实现图形界面(工具)
jsb和servlet文件下载步骤
package com.example.demo3; import org.apache.commons.io.IOUtils; import javax.servlet.ServletContext; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.Ht
一个风轻云淡
2022/11/13
3240
Spring MVC 4 文件下载实例(带源码)
【本系列其他教程正在陆续翻译中,点击分类:spring 4 mvc 进行查看。源码下载地址在文章末尾。】
明明如月学长
2021/08/27
8330
Java 文件下载案例讲解
文件下载是Web应用程序中常见的功能之一。它允许用户从Web服务器上下载文件,例如文档、图片、音频、视频等。在本文中,我们将详细解释如何在Java Web应用程序中实现文件下载功能。我们将提供示例代码和逐步说明,以帮助您理解和实现这一功能。
繁依Fanyi
2023/11/04
4250
Spring MVC-10循序渐进之文件下载
像静态资源,我们在浏览器中打开正确的URL即可下载,只要该资源不是放在WEB-INF目录下,Servlet/JSP容器就会将该资源发送到浏览器。 然而有的时候静态资源是保存在应用程序目录外或者存在数据库中,或者有的时候需要控制它的访问权限,防止其他网站交叉引用它。 如果出现上述任意一种情况,都必须通过编程来发送资源。
小小工匠
2021/08/17
3760
java(io流—字符输入流、字符输出流、转换流)
java.io.FileReader extends InputStreamReader extends Reader
全栈开发日记
2022/05/12
9840
java(io流—字符输入流、字符输出流、转换流)
java导出Excel表格
最近自己着手写了一个前后端分离的后台管理系统(主要是写着玩,java还是熟悉一点,所以前后端均是自己写),后端使用的Java SpringMVC。后来想着在用户管理中添加一个导出功能,所以就上网查了资料,实现了简单的导出功能,在这里记录下自己的过程。 1、在java项目中引入导出功能需要的jar包   poi-3.9.jar   poi-examples-3.9.jar   poi-excelant-3.9.jar   poi-ooxml-3.9.jar   poi-ooxml-schemas-3.9.ja
用户1174387
2018/01/17
4.6K0
java导出Excel表格
ServletContext对象使用和文件下载案例
* 两种方法获取servletContext对象 * 获取MIME类型 * 设置域对象:共享数据
不愿意做鱼的小鲸鱼
2022/09/24
4100
ServletContext对象使用和文件下载案例
Springmvc+uploadify实现文件上传
   网上看了很多关于文件上传的帖子,众口不一,感觉有点乱,最近正好公司的项目里用到JQuery的uploadify控件做文件上传,所以整理下头绪,搞篇文档出来,供亲们分享。
bear_fish
2018/09/19
1.1K0
Springmvc+uploadify实现文件上传
相关推荐
SpringMVC上传下载
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档