首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > Java Exception >

sun.io.MalformedInputException异常求解

2014-01-26 
我的一个程序偶尔报&ldquosun.io.MalformedInputException&rdquo。详细信息:sun.io.MalformedInputExcepti

  我的一个程序偶尔报“sun.io.MalformedInputException”。
 
  详细信息:
 
 
  sun.io.MalformedInputException
  at sun.io.ByteToCharUTF8.convert(ByteToCharUTF8.java(Compiled Code))
  at java.io.InputStreamReader.convertInto(InputStreamReader.java(Inlined Compiled Code))
  at java.io.InputStreamReader.fill(InputStreamReader.java(Compiled Code))
  at java.io.InputStreamReader.read(InputStreamReader.java(Compiled Code))
  at java.io.BufferedReader.fill(BufferedReader.java(Compiled Code))
  at java.io.BufferedReader.readLine(BufferedReader.java(Compiled Code))
  at java.io.BufferedReader.readLine(BufferedReader.java(Compiled Code))
  at dsmpboss.servlet.HomeReceiver.Process(HomeReceiver.java:77)
  at dsmpboss.servlet.HomeReceiver.service(HomeReceiver.java:237)
  at javax.servlet.http.HttpServlet.service(HttpServlet.java(Compiled Code))
  at weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run(ServletStubImpl.java(Compiled Code))
  at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java(Compiled Code))
  at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java(Inlined Compiled Code))
  at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java(Compiled Code))
  at weblogic.security.service.SecurityServiceManager.runAs(SecurityServiceManager.java(Compiled Code))
  at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletContext.java(Compiled Code))
  at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java(Compiled Code))
  at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java(Compiled Code))
  at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:219)
 
 
 
  代码:
 
 
  try {
  BufferedReader in = new BufferedReader(new InputStreamReader(request.getInputStream(),"UTF-8"));
  while ((sLine = in.readLine()) != null) {
  sbBuf.append(sLine);
  }
  in.close();
  } catch (Exception e2 ) {
  System.out.println("get package from client error!");
  throw e2;
  }
 
  gsInputData = sbBuf.toString();
  gsInputData = gsInputData.substring(9,gsInputData.length());
 
 
 
 
 
 
 
  现象:主要是当报文中有汉字时比较容易报这个错,但是不是全错,还是有解析正确的。

------解决方法--------------------------------------------------------
sun.io.ByteToCharUTF8.convert(ByteToCharUTF8.java(Compiled Code))
  是在不行 你反编译看下算了
------解决方法--------------------------------------------------------
不行的话,你用in.read(byte[]);看看

        

热点排行