服务器-出现下面错误怎么解决啊 ,求方法,请大神们帮我看看!

问题描述

出现下面错误怎么解决啊 ,求方法,请大神们帮我看看!

if(agent.contains("MSIE")){

这句报错, 错误提示The method contains(CharSequence) from the type String refers to the missing type CharSequence

 package cn.itcast.response;

import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.net.URLEncoder;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

/**
 * 文件下载
 * @author Administrator
 *
 */
public class DownloadServlet extends HttpServlet {

    public void doGet(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        // 先获取到文件,读入输入流中
        // 获取文件的绝对磁盘路径
        String path = getServletContext().getRealPath("/img/外国美女.jpg");
        // 包含文件的名称    c:tomcatwebappsday10imggirl7.jpg
        // 截取文件的名称    girl7.jpg
        String filename = null;
        // 获取最后一个的位置
        int index = path.lastIndexOf("\");
        if(index != -1){
            filename = path.substring(index+1);
        }

        // 判断是什么浏览器 Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.1; WOW64; Trident/6.0)
        // Mozilla/5.0 (Windows NT 6.1; WOW64; rv:30.0) Gecko/20100101 Firefox/30.0
        String agent = request.getHeader("User-Agent");
        // System.out.println(agent);
        if(agent.contains("MSIE")){
            filename = URLEncoder.encode(filename,"UTF-8");
        }

        if(filename != null){
            // 设置头信息
            response.setHeader("Content-Disposition", "attachment;filename="+filename);

            System.out.println(request.getRemoteAddr());

            System.out.println(path);
            InputStream in = new FileInputStream(path);
            // 通过response读出到客户端
            OutputStream os = response.getOutputStream();
            // io的拷贝
            byte [] b = new byte[1024];
            int len = 0;
            while((len =  in.read(b)) != -1){
                os.write(b, 0, len);
            }
            in.close();
            // os.close();服务器管理流
        }

    }

    public void doPost(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        doGet(request, response);
    }

}

解决方案

if(agent.contains("MSIE"))
->
if(agent.indexOf("MSIE") != -1)
这个支持更好

解决方案二:

是不是JDK版本问题啊,我用JDK1.8就没有这个问题啊。

解决方案三:

没有java.lang.CharSequence,你看一下是不是项目没有添加jre system library。检查一下jre运行环境。

时间: 2024-10-02 04:20:58

服务器-出现下面错误怎么解决啊 ,求方法,请大神们帮我看看!的相关文章

servlet- 出现下面错误怎么解决啊 ,求方法,请大神们帮我看看!

问题描述 出现下面错误怎么解决啊 ,求方法,请大神们帮我看看! if(agent.contains("MSIE")){ 这句报错, 错误提示The method contains(CharSequence) from the type String refers to the missing type CharSequence package cn.itcast.response; import java.io.FileInputStream; import java.io.IOExc

数据库 mysql-java Error querying database.在线急需求指导,大神们帮个忙吧

问题描述 java Error querying database.在线急需求指导,大神们帮个忙吧 org.springframework.jdbc.BadSqlGrammarException: Error querying database. Cause: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Unknown column 'username' in 'field list' The error may invo

图片-androidstudio 报错求方法。大神看一下吧

问题描述 androidstudio 报错求方法.大神看一下吧 androidstudio Plugin with id 'com.android.application求方法 解决方案 要下载相应插件,可以找下国内镜像.搜:Android国内镜像. 解决方案二: http://stackoverflow.com/questions/24795079/error1-0-plugin-with-id-com-android-application-not-found 解决方案三: 建议使用vpn去

求方法,大神们自定义cell ios

问题描述 求方法,大神们自定义cell ios 怎么自定义一个cell像手机qq音乐一样里面有图片有两个label,点击它,相应的表格可以跳到播放界面 解决方案 创建一个类继承UITableViewCell,如果用代码写,就在.h文件里写入你所需要的控件,再在.m文件里创建:如果是xib,就直接拖控件并绑定 解决方案二: http://www.cnblogs.com/hellocby/archive/2012/05/23/2514270.html 解决方案三: 直接把label替换成button

连接数据库 错误-我的sql连接有问题吗?用的是Dwr!看下面代码以及出的问题,请大神们帮我呀!

问题描述 我的sql连接有问题吗?用的是Dwr!看下面代码以及出的问题,请大神们帮我呀! 我的DBManager!用于连接数据库! package com.qhit.util; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; import javax.n

setcontentview-【Android】setContentView和Inflater问题,请大神们帮我解决!大谢~

问题描述 [Android]setContentView和Inflater问题,请大神们帮我解决!大谢~ 一个Activity内多个View互相切换,我查的网上的资料都是使用setContentView+LayoutInflater结合操作,比如这段代码. enter code here public class MainActivity extends Activity { View layoutMain = null; View layoutSecond = null; Button btn

服务器-bootstrap table 服务的分页问题 , 求各路高手大神搭救

问题描述 bootstrap table 服务的分页问题 , 求各路高手大神搭救 服务的分页,每次翻页都会去请求服务器 , 怎么设置让已经加载的页面不在去请求服务端 解决方案 不在去请求服务端(包括缓存.数据库?)的话,那就第一次加载的数据把数据都存放在本地,然后读取就可以了.html5有离线读取本地数据的功能. 解决方案二: 一般每次翻页都要去请求服务器吗? 会造成服务器压力过大吗 ? 如果设置bootstrap table 服务端分页 ,那么每次翻页都要请求服务器 , 如果又想服务的分页 又

发布网站到服务器,浏览的时候出现这个问题,请大神指教

问题描述 "/"应用程序中的服务器错误.--------------------------------------------------------------------------------不是有效的Win32应用程序.(异常来自HRESULT:0x800700C1)说明:执行当前Web请求期间,出现未处理的异常.请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息.异常详细信息:System.BadImageFormatException:不是有效的Win

请大神进来帮我这个菜鸟看看这是什么问题,求达人啊

问题描述 HTTPStatus500---------------------------------------------------------------------------------typeExceptionreportmessagedescriptionTheserverencounteredaninternalerror()thatpreventeditfromfulfillingthisrequest.exceptionorg.apache.jasper.JasperExc