: :
DOPOST VOID المحمي (طلب httpservletrequest ، استجابة httpservletresponse) يلقي servleTexception ، ioException {String prowser = "" ؛ اسم ملف السلسلة = "测试 .txt" ؛ حاول {browser = request.getheader ("عامل المستخدم") ؛ if (-1 <browser.indexof ("msie 6.0") || -1 <browser.indexof ("MSIE 7.0")) {// ie6 ، ie7 浏览器 reponse.addheader ("content-disposition" ، "filename =" + new string.getbytes () ، "ISO8859-1") ؛ } آخر إذا (-1 <browser.indexof ("MSIE 8.0")) {// ie8 review.addheader ("disposition content" ، "filename =" + urlencoder.encode (filename ، "UTF-8")) ؛ } آخر إذا (-1 <browser.indexof ("MSIE 9.0")) {// ie9 review.addheader ("content-disposition" ، "filename ؛" + urlencoder.encode (filename ، "UTF-8") } آخر إذا (-1 <browser.indexof ("chrome")) {// 谷歌 reponse.addheader ("content-disposition" ، "filename ؛ } آخر إذا (-1 <browser.indexof ("Safari")) {// 苹果 reponse.addheader ("content-disposition" ، "fileName ؛ } آخر {// 火狐或者其他的浏览器 reponse.addheader ("disposition content" ، "filename*= utf-8 ''" + urlencoder.encode (filename ، "utf-8")) ؛ }} catch (استثناء e) {E.PrintStackTrace () ؛ } inputStream in = new FileInputStream ("d: //test.txt") ؛ // 获取文件输入流 int len = 0 ؛ Byte [] Buffer = New Byte [1024] ؛ outputStream Out = response.getOutputStream () ؛ بينما ((len = in.read (buffer))> 0) {out.write (buffer ، 0 ، len) ؛ // 将缓冲区的数据输出到客户端浏览器} in.close () ؛ out.flush () ؛ out.close () ؛ }判断各个浏览器 ، 然后进行解码和加码。
以上这篇 java 文件下载设置中文名称的实例 (response.addheader) 就是小编分享给大家的全部内容了 , 希望能给大家一个参考 , 也希望大家多多支持武林网。