Exception in thread "main" java.nio.charset.MalformedInputException: Input length = 1
2015-10-16 19:45
2091 查看
异常信息
D:\Develop\JDK\jdk-7u79-windows-i586\bin\java -Didea.launcher.port=7536 "-Didea.launcher.bin.path=D:\Develop\Scala\IntelliJ IDEA Community Edition 14.1.3\bin" -Dfile.encoding=UTF-8 -classpath "D:\Develop\JDK\jdk-7u79-windows-i586\jre\lib\charsets.jar;D:\Develop\JDK\jdk-7u79-windows-i586\jre\lib\deploy.jar;D:\Develop\JDK\jdk-7u79-windows-i586\jre\lib\javaws.jar;D:\Develop\JDK\jdk-7u79-windows-i586\jre\lib\jce.jar;D:\Develop\JDK\jdk-7u79-windows-i586\jre\lib\jfr.jar;D:\Develop\JDK\jdk-7u79-windows-i586\jre\lib\jfxrt.jar;D:\Develop\JDK\jdk-7u79-windows-i586\jre\lib\jsse.jar;D:\Develop\JDK\jdk-7u79-windows-i586\jre\lib\management-agent.jar;D:\Develop\JDK\jdk-7u79-windows-i586\jre\lib\plugin.jar;D:\Develop\JDK\jdk-7u79-windows-i586\jre\lib\resources.jar;D:\Develop\JDK\jdk-7u79-windows-i586\jre\lib\rt.jar;D:\Develop\JDK\jdk-7u79-windows-i586\jre\lib\ext\access-bridge.jar;D:\Develop\JDK\jdk-7u79-windows-i586\jre\lib\ext\dnsns.jar;D:\Develop\JDK\jdk-7u79-windows-i586\jre\lib\ext\jaccess.jar;D:\Develop\JDK\jdk-7u79-windows-i586\jre\lib\ext\localedata.jar;D:\Develop\JDK\jdk-7u79-windows-i586\jre\lib\ext\sunec.jar;D:\Develop\JDK\jdk-7u79-windows-i586\jre\lib\ext\sunjce_provider.jar;D:\Develop\JDK\jdk-7u79-windows-i586\jre\lib\ext\sunmscapi.jar;D:\Develop\JDK\jdk-7u79-windows-i586\jre\lib\ext\sunpkcs11.jar;D:\Develop\JDK\jdk-7u79-windows-i586\jre\lib\ext\zipfs.jar;D:\Develop\Scala\IntelliJ IDEA Projects\scalaProjects\out\production\scalaProjects;C:\Users\Administrator.TAEJYCFQ0UOHIX6\.ivy2\cache\org.scala-lang\scala-library\jars\scala-library-2.11.7.jar;C:\Users\Administrator.TAEJYCFQ0UOHIX6\.ivy2\cache\org.scala-lang\scala-reflect\jars\scala-reflect-2.11.7.jar;D:\Develop\Scala\IntelliJ IDEA Community Edition 14.1.3\lib\idea_rt.jar" com.intellij.rt.execution.application.AppMain kmust.hjr.learningScala18.FileOps Exception in thread "main" java.nio.charset.MalformedInputException: Input length = 1 at java.nio.charset.CoderResult.throwException(CoderResult.java:277) at sun.nio.cs.StreamDecoder.implRead(StreamDecoder.java:338) at sun.nio.cs.StreamDecoder.read(StreamDecoder.java:177) at java.io.InputStreamReader.read(InputStreamReader.java:184) at java.io.BufferedReader.fill(BufferedReader.java:154) at java.io.BufferedReader.readLine(BufferedReader.java:317) at java.io.BufferedReader.readLine(BufferedReader.java:382) at scala.io.BufferedSource$BufferedLineIterator.hasNext(BufferedSource.scala:72) at scala.collection.Iterator$class.foreach(Iterator.scala:742) at scala.collection.AbstractIterator.foreach(Iterator.scala:1194) at kmust.hjr.learningScala18.FileOps$.main(FileOps.scala:11) at kmust.hjr.learningScala18.FileOps.main(FileOps.scala) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:606) at com.intellij.rt.execution.application.AppMain.main(AppMain.java:140) Process finished with exit code 1
附图:
解决方案
说明:在处理文本文件字符编码转换时碰到此问题以前Java中遇到过此类问题:
java.nio.charset.MalformedInputException: Input length = 1
at java.nio.charset.CoderResult.throwException(Unknown Source) [na:1.6.0_17]
at org.apache.mina.core.buffer.AbstractIoBuffer.getString(AbstractIoBuffer.java:1442) [comet-server.jar:na]
JAVA API 中的说明是当输入字节序列对于给定 charset 来说是不合法的,或者输入字符序列不是合法的 16 位 Unicode 序列时,抛出此经过检查的异常
相关文章推荐
- Java笔试笔记
- Spring中的设计模式
- 算法学习日记--最大公约数问题
- java的Arrays类
- Java四种对象引用类型:强软弱虚
- java.lang.OutOfMemoryError: PermGen space
- java练习题——类与对象
- Java语言使用注解处理器生成代码——第二部分:注解处理器
- JavaCC 的安装
- 算法学习日记--寻找数组中的最大值和最小值
- Eclipse如何设置调试时自动切换到自己定制的透视视图
- java中的内部类(嵌套类)
- Maven 依赖 spring-web 对战 spring-webmvc
- Spring中的p标签
- Java 8新特性终极指南
- spring mvc入门
- spring aop注解和xml两种方式的基础
- Java反射API研究(1)——注解Annotation
- java中静态代码块的用法 static用法详解
- JAVA设计模式(7) —<结构型>装饰模式(Decorator)