String name = request.getParameter("name");
name = new String(usertruthname.getBytes("ISO8859_1"));name是null值,
如果不使用强制类型转换,程序运行无误,但是如果加上对name的强制转换,就会抱出空指针异常。

解决方案 »

  1.   

    name是null值,接收是的问题,楼主看看页面中的的名字是不是name
      

  2.   

    request.getParameter("name");
    没有提交name这个参数值过来呀!
    name = new String(usertruthname.getBytes("ISO8859_1"));
    同时,你这转换也有问题呀!改成:
    name = new String(usertruthname.getBytes("ISO-8859-1"),"utf-8");
      

  3.   

    抱空指针异常,是因为不能对NULL值进行强制转换。
    不是因为上面二位所说的问题
      

  4.   

    是不是得用 String name = request.getAttribute("name"); 呢?
      

  5.   

    String name = new String(usertruthname.getBytes("ISO-8859-1"),"utf-8");
      

  6.   

    是啊,为null时还怎么进行转换啊,他又不是这个" "空;而且2楼的最后那个是拆分重组吧,把他转化成utf-8的,在转换
      

  7.   

    解决乱码的三种方法,自己总结:1、TOMCAT下的conf文件夹下的server.xml文件中加上uriending="gbk"2、filter过滤器
    package dao;import java.io.IOException;import javax.servlet.Filter;import javax.servlet.FilterChain;import javax.servlet.FilterConfig;import javax.servlet.ServletException;import javax.servlet.ServletRequest;import javax.servlet.ServletResponse;public class SetCharacterEncodingFilter implements Filter { public void destroy() { } public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException { request.setCharacterEncoding("GBK"); chain.doFilter(request, response); } public void init(FilterConfig filterConfig) throws ServletException { }}web.xml文件配置好下:<?xml version="1.0" encoding="GBK"?>
    <web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee 
    http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
    <welcome-file-list>
    <welcome-file>Login.jsp</welcome-file>
    </welcome-file-list>
    <filter>
    <filter-name>Set Character Encoding</filter-name>
    <filter-class>dao.SetCharacterEncodingFilter</filter-class>
    </filter>
    <filter-mapping>
    <filter-name>Set Character Encoding</filter-name>
    <url-pattern>/*</url-pattern>
    </filter-mapping>
    </web-app>3、用类型强制转换
    String name = request.getParameter(param_name);
    name = new String(name.getBytes("ISO8859_1"));
    注:如果用类型强制转换就不要再去修改server.xml文件了,不然这样会仍会出现乱码问题。
    注:filter过滤器似乎只针对post的传递方式有效,如果要是get传值的话可能用这个方法并不理想。
    注:类型强制转建议不要采取。