java.io.CharConversionException: Not an ISO 8859-1 character:

java.io.CharConversionException: Not an ISO 8859-1 character: XXX

这个问题可能是因为outputstream输出中文字造成的影响。

response.setContentType("text/html;charset=UTF-8");
//response.getOutputStream().print("中文字"); //这行会出错
response.getWriter().print("中文字"); //换成这个就好了
response.getWriter().close();

原因我个人觉得是因为outputstream是以字节为单位输出字符串的,需要符合那个ISO 8859-1编码;但要输出的字符串是UTF8编码的,所以就有问题。但根源问题,我真没想通。

换成Writer就好了。可能是因为那个inputstream和reader,outputstream和Writer的区别吧。

时间: 2024-10-06 19:57:58

java.io.CharConversionException: Not an ISO 8859-1 character:的相关文章

(https://www.ibm.com/developerworks/community/forums/html/topic?id=77777777-0000-0000-0000-000014550004)Topic: Caught java.io.CharConversionException. ERRORCODE=-4220, SQLSTATE=null

270002WDPN 3 Posts 0 people like this Pinned topic                                                              Caught java.io.CharConversionException. ERRORCODE=-4220, SQLSTATE=null Nov 5, 2010                                     |                  

SqlException with message "Caught java.io.CharConversionException." and ERRORCODE=-4220

Technote (troubleshooting) Problem(Abstract) When an application uses the IBM Data Server Driver for JDBC and SQLJ (also known as the JCC driver) and is connected to a database with code set UTF-8 (code page 1208), it throws an SqlException with mess

关于db2处理特殊字段出现异常java.io.charConversionException

记录一下以前遇到的问题 在使用db2数据库处理数据的时候,碰到特殊字段,出现的问题 java.io.charConversionException 官方解决方法: db2.jcc.charsetDecoderEncoder=3 so that instead of throwing an exception the JCC driver returns the Unicode REPLACEMENT CHARACTER (U+FFFD) in place of a sequence of byt

java.io 包

java.io 通过数据流.序列化和文件系统提供系统输入和输出. 请参见: 接口摘要 Closeable Closeable 是可以关闭的数据源或目标. DataInput DataInput 接口用于从二进制流中读取字节,并根据所有 Java 基本类型数据进行重构. DataOutput DataOutput 接口用于将数据从任意 Java 基本类型转换为一系列字节,并将这些字节写入二进制流. Externalizable Externalizable 实例类的唯一特性是可以被写入序列化流中,

Java IO基础知识(上)

Java IO概述 IO是整个人机交互的核心问题,因为IO是计算机获取和交换数据的主要渠道. 整个IO的流程就是 源数据--->程序--->目的地 IO的分类 基于字符操作的IO接口:Reader,Writer 基于字节操作的IO接口:InputStream,OutputStream 基于磁盘操作的IO接口:File 基于网络操作的IO接口:Socket(不在java.io包下面,但是socket的本质也是io操作) 一个程序需要InputStream或者Reader从数据源读取数据,需要Ou

J2SE知识点归纳笔记(七)---Java IO Part 4:基本字符流

J2SE知识点归纳笔记(七)---Java IO Part 4:基本字符流                                                                 --转载请注明出处:coder-pig 本节引言: 上一节中,我们对于Java IO流中的一些基本字节流进行了学习,他们都是InputStream与 OutputStream的子类;本节学习的字符流则是Reader与Writer的子类,好了,话不多说, 开始本节内容! 本节正文: 1.Reade

java IO之输入流——InputStream

java的基本输入流是java.io.InputStream,该抽象类定义了输入流的基本输入操作方法,实现自该抽象类的子类都有定义自己的数据源,例如ByteArrayInputStream的构造函数指定了ByteArrayInputStream输入流的数据源必须是一个字符数组.这就可以有多种不同的数据源,包括:字符数组.String对象.文件."管道".一个由其他种类的流组成的序列... 1 public ByteArrayInputStream(byte buf[]) {} 2 3

Hive报错 Failed with exception java.io.IOException:java.lang.IllegalArgumentException: java.net.URISyntaxException: Relative path in absolute URI: ${system:user.name%7D

报错信息如下 Failed with exception java.io.IOException:java.lang.IllegalArgumentException: java.net.URISyntaxException: Relative path in absolute URI: ${system:user.name%7D 解决方法: 编辑 hive-site.xml 文件,添加下边的属性 <property> <name>system:java.io.tmpdir<

java.io.IOException: No space left on device 错误

今天碰到比较奇怪的问题: 7/05/14 19:20:24 INFO util.Utils: Fetching http://192.168.31.160:33039/jars/spark_study_java-0.0.1-SNAPSHOT-jar-with-dependencies.jar to /tmp/spark-446068a4-aaa4-4277-b009-908bf0d4ecac/executor-dcc3175b-7d19-4485-81e1-bf31a83a66b4/spark-