关于读取文件内容时报sun.io.MalformedInputException的问题 [转]

摘要:
在Internet上找到的原因是:出现此问题的原因是,为了追求JDK1.4中IO通道的效率,IBM更改了JDK1.3中IO通道异常处理策略。在IBM JDK1.4中,IO通道的异常处理更加严格,因此系统将报告上述错误。解决这个问题的方法是使用nio通道,而不是IBMJDK1.4中的默认io通道。具体步骤如下:1.打开管理控制台,找到并选择运行JSP的应用程序服务器。2.

在网上找到的原因是这样的:
这个问题产生的原因是IBM在JDK 1.4版本中为了追求对io通道的高效率改变了JDK 1.3中对io通道中异常处理的策略。IBM JDK 1.4中对于io通道的异常处理更加严格,因此系统中会报上面的错误。 
解决这一问题的办法是不使用IBM JDK 1.4中默认的io通道,而使用nio通道。具体的做法如下: 
1.打开管理控制台,找到并选择运行这个JSP的应用服务器 
2.依次选择进程定义,java虚拟机,一般JVM自变量 
3.添加-Dibm.stream.nio=true 
4.确定,保存 
5.重新启动该服务器 

本来我就怀疑又是IBM JDK的问题,果然被我不幸言中了,再次表示一下郁闷!

我发现在我需要读取的文件当中存在这样的一些乱码字符

我原来是用下面这段程序读取这个文件的内容并打印的:

FileReader fr = new FileReader(file);
BufferedReader br = new BufferedReader(fr);
String str="";
String result = "";
while((str=br.readLine())!=null){
    result += str + "\n";
}

免责声明:文章转载自《关于读取文件内容时报sun.io.MalformedInputException的问题 [转]》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇事件冒泡或事件捕获C#、Java和JS实现SHA256+BASE64加密总结下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

随便看看

OHC Java堆外缓存详解与应用

缓存框架OHC基于Java语言实现,并由其他Java程序以类库的形式调用。它是以独立模式运行的堆外缓存。特定于JVM应用程序,它可以分为堆内缓存和堆外缓存。OHC的全名是堆外缓存或堆外缓存。它是一个基于Java的堆外缓存框架键值。...

DEP(数据执行保护)介绍

数据执行保护是一组软件和硬件技术,可以对内存执行额外检查,以帮助防止恶意代码在系统上运行。硬件实现DEP来检测从这些位置运行的代码,并在发现执行时抛出异常。此功能也称为非执行和执行保护。为了与DEP合作,AMD和微软共同设计并开发了AMD的新芯片功能“增强病毒防护”。[1] DEP的安全机制,即“数据执行保护”,是一种Windows安全机制,主要用于防止病毒...

解决Windows 10每次重启默认浏览器都被重置为IE的一个办法

我的Windows10电脑每次设置默认浏览器重启后都会被重置为IE,这是个令人抓狂的问题。现在大部分浏览器都不支持IE浏览器了,如果每次点击外链都自动通过IE打开,则需要额外的操作手动拷贝粘贴到火狐打开,会影响工作效率。在网上找了各种各样的解决办法都不灵……再设置一次默认浏览器如下图所示,设置好了之后重启电脑试一下吧,祝你好运!...

Android Exception 10(server)' ~ Channel is unrecoverably broken and will be disposed!)

08-1119:22:35.028:W/MemoryDealer(2123):madvise(0x43e1600012288,MADV_REMOVE)返回操作不支持传输端点08-1119:22-35.038:W/InputDispatcher(2714):channel'4236b890com.tongyan.activi...

图论介绍(Graph Theory)

G-v具有比G更多的连通分支,因此v被称为G的截断点G-e具有比G多的连通分支。定理:连通图G,其中e是桥e不属于G的任何环有顶点u,v,使得任何路径u-v都通过e连通图G;而w是存储在顶点u,v处的割点,使得任意路径u-v通过w定义:顶点之间的距离x-y:所有x-y路径的最小长度。...

一起学习Avalonia(十二)

可以使用数据模板自定义和显示数据模板模板。文档中介绍了Avalonia的基本数据模板。PublicstringFirstName{get;set;}publicstringLastName{get;set;}扩展使用文档最后介绍了扩展使用,包括2个模型。Student和Teacher。在MainWindowViewModel中创建属性Content。此属性是...