百度
360搜索
搜狗搜索

java输出中文乱码,java中文乱码问题详细介绍

本文目录一览: java servlet出现中文乱码怎么办?

response.setContentType("text/html;charset=UTF-8;pageEncoding=UTF-8");\x0d\x0a这个要在servlet的方法中的第一行,你先进行response的转换就可以了,改成\x0d\x0aresponse.setContentType("text/html;charset=UTF-8;pageEncoding=UTF-8");//放到这\x0d\x0aPrintWriter out=response.getWriter();\x0d\x0a//从这里\x0d\x0aresponse.setCharacterEncoding("UTF-8");\x0d\x0aout.println("");\x0d\x0aout.println("");\x0d\x0aout.println("Simple servlet");\x0d\x0aout.println("中国");\x0d\x0aout.println(" ");

java中文输出结果时是一段不认识的字

是因为java中文输出的时候,出现了乱码。安装和设置字库、设置语言环境变量即可恢复。

在java中怎样处理中文乱码的问题?(有几种处理方式)

(1) string ss; ss=new string(ss.getBytes("IS0-8859-1","GB2312"));
(2)在web.xml中添加
标签处理乱码;
所以在以url(或表单提交方式是get的数据)传值的时候应该硬性转码:
String para =new String(str.getByte("iso-8859-1"),"UTF-8");
统一编码,如用utf-8
用过滤器
http://wenku.baidu.com/view/a83df40b79563c1ec5da7182.html
  读取文件的时候如果是用的read方法(字节流),碰到中文输出就是乱码,然后存储的时候设置下编码为GBK或者是UTF-8形式即可,可以有效的解决乱码问题。
  可以通过BufferedReader 流的形式进行流缓存,之后通过readLine方法获取到缓存的内容。
  BufferedReader bre = null;
  try {
  String file = "D:/test/test.txt";
  bre = new BufferedReader(new FileReader(file));//此时获取到的bre就是整个文件的缓存流
  while ((str = bre.readLine())!= null) // 判断最后一行不存在,为空结束循环
  {
  System.out.println(str);//原样输出读到的内容
  };
  备注: 流用完之后必须close掉,如上面的就应该是:bre.close(),否则bre流会一直存在,直到程序运行结束。
  可以通过“FileOutputStream”创建文件实例,之后过“OutputStreamWriter”流的形式进行存储,举例:
  OutputStreamWriter pw = null;//定义一个流
  pw = new OutputStreamWriter(new FileOutputStream(“D:/test.txt”),"GBK");//确认流的输出文件和编码格式,此过程创建了“test.txt”实例
  pw.write("我是要写入到记事本文件的内容");//将要写入文件的内容,可以多次write
  pw.close();//关闭流
  备注:文件流用完之后必须及时通过close方法关闭,否则会一直处于打开状态,直至程序停止,增加系统负担。

为什么java编程中写的汉字变成乱码了???

java编程中写的汉字变成乱码了,原因:
可能用的是note来编写 的代码的,这样 转到IDE环境下, 就会编码不同,而出现乱码。
IDE环境的编码改变了, 所以 也会出现乱码。
解决办法:
1.可以将你的IDE文本属性设置为utf-8或者gbk,普遍java ide的默认编码为iso
2.用note编写, 将代码 保存为UTF-8的格式 。
3.在编写代码时所用的字符集要和显示 的时候的字符集一样, 才不会出现乱码。
您好!
本身编辑文件的时候用的编码不一样.. 例如. 你写的类文件起始编码为 GB-2312 的 (记事本)而用ide 工具打开后会出现乱码. 那就是ide 本身默认打开文件的编码方式不一样.当然 相反也是.. ide 编写的文件 默认编码和打开方式 例如 记事本所 或者 html 打开的 可能也会出现乱码, 那就需要,, 统一编码. 简单的方法就是 将文件用 记事本打开.. 然后另存. 另存的过程中有个 编码方式选择. 选择与编译器相同的就可以了,
也可以改变编译器的默认编码.
希望能帮到您!敬请采纳!
中国物联网校企联盟
不是变成乱码了。是一个汉字占两个字节,你如果在删除汉字的时候,他是一个字节一个字节的删的,所以你如果没有正好删掉两个字节,剩下的字节就乱了。
没错,这是由于你的IDE设置有关,你可以将你的IDE文本属性设置为utf-8或者gbk,普遍java ide的默认编码为iso
从工具中设定java文件的编码格式
你的编码格式选择的不对,右键单击项目,点击Properties:
将格式换成GBK或者UTF-8就行了

如何解决Java项目中的中文乱码

设置工作空间的编码:
编辑器的编码会影响到所有的项目中的字符的显示,可以说是作用最为广泛的设置,每一个项目都会受到这个设置的影响。点击菜单栏中的窗口(Window)— —选项(Preferences)。
点击常规(General)— —工作空间(Wordspace),然后在右侧的文本文件编码格式(Text file encoding)中选择你想要设置的编码格式,系统默认的格式为GBK。
设置项目的编码:
如果其他的项目中不存在乱码问题,只是个别项目显示时出现乱码,那么我们不需要设置工作空间的编码,只需要修改项目的编码即可。
选中项目后,右键点击,在弹出的菜单中点击属性(Properties)。
在弹出的属性窗口中,选择资源(Resource)— —点击选择Other(其他),然后选择你想要的编码格式。
设置单个文件的编码:
只是个别文件出现了乱码,那么设置个别文件的编码格式就可以解决问题了。选中有乱码的文件,然后点击右键。
在弹出的菜单中选择属性(Properties)。
在弹出的属性窗口中选择资源,点击Other(其他)后设置个别文件的编码方式
一. 设置工作空间的编码
1. 编辑器的编码会影响到所有的项目中的字符的显示,可以说是作用最为广泛的设置,每一个项目都会受到这个设置的影响。点击菜单栏中的窗口(Window)— —选项(Preferences)。
2. 点击常规(General)— —工作空间(Wordspace),然后在右侧的文本文件编码格式(Text file encoding)中选择你想要设置的编码格式,系统默认的格式为GBK。
二. 设置项目的编码
1. 如果其他的项目中不存在乱码问题,只是个别项目显示时出现乱码,那么我们不需要设置工作空间的编码,只需要修改项目的编码即可。
2. 选中项目后,右键点击,在弹出的菜单中点击属性(Properties)。
3. 在弹出的属性窗口中,选择资源(Resource)— —点击选择Other(其他),然后选择你想要的编码格式。
三. 设置单个文件的编码
1. 只是个别文件出现了乱码,那么设置个别文件的编码格式就可以解决问题了。选中有乱码的文件,然后点击右键。
2. 在弹出的菜单中选择属性(Properties)。
3. 在弹出的属性窗口中选择资源,点击Other(其他)后设置个别文件的编码方式。

用java在CMD中编译println中文的时候,出现了乱码怎么办?用了-encoding 命令修改文本编码也不行!

Java在CMD下出现中文乱码的问题解决方案:
开始-> 右键计算机 ->属性 -> 高级系统设置 ->环境变量 -> 系统变量的部分点击新建
输入变量名:“JAVA_TOOL_OPTIONS”
输出变量值:"-Dfile.encoding=UTF-8"
(没有引号)

eclipse中java中文控制台输出的这种乱码怎么解决

设置下你IDE的字符集及Java源文件的字符集,且要保持一致即可。
编码格式的问题,把获取的 zfc 的编码格式转换成utf-8应该就ok了
eclipse中java中文控制台输出的这种乱码解决方式:
一、(1)打开eclipse或myeclipse,点击run-》runconfigurations
如图提示,改成UTF-8,有的eclipse或myeclipse有可能需要gbk的形式,不同形式改成不同的编码,尝试一下即可。
(2)Arguments也需要更改一下。
二、方法如下:
打开eclipse.ini文件(在eclipse的安装目录) 添加上这句话 -Dfile.encoding = utf-8,设置系统属性file.encoding为utf-8.

java中文乱码问题

因为utf-8是linux的编码,所以你在windos上用linux当然会乱码。同理如果你在linux环境下,用gb一样也会乱码,这是操作系统决定的。所以,windows上就必须用gb,换成别的当然会乱码了。操作系统不支持啊
乱码问题也是我一直觉得比较蛋疼的问题,下面是我在网上看到的,楼主可以参考一下
一、Java中文问题的由来
  Java的内核和class文件是基于unicode的,这使Java程序具有良好的跨平台性,但也带来了一些中文乱码问题的麻烦。原因主要有两方面,Java和JSP文件本身编译时产生的乱码问题和Java程序于其他媒介交互产生的乱码问题。
  首先Java(包括JSP)源文件中很可能包含有中文,而Java和JSP源文件的保存方式是基于字节流的,如果Java和JSP编译成class文件过程中,使用的编码方式与源文件的编码不一致,就会出现乱码。基于这种乱码,建议在Java文件中尽量不要写中文(注释部分不参与编译,写中文没关系),如果必须写的话,尽量手动带参数-ecoding GBK或-ecoding gb2312编译;对于JSP,在文件头加上或基本上就能解决这类乱码问题。
  本文要重点讨论的是第二类乱码,即Java程序与其他存储媒介交互时产生的乱码。很多存储媒介,如数据库,文件,流等的存储方式都是基于字节流的,Java程序与这些媒介交互时就会发生字符(char)与字节(byte)之间的转换,具体情况如下:
  从页面form提交数据到java程序 byte->char
  从java程序到页面显示 char?>byte
  从数据库到java程序 byte?>char
  从java程序到数据库 char?>byte
  从文件到java程序 byte->char
  从java程序到文件 char->byte
  从流到java程序 byte->char
  从java程序到流 char->byte
  如果在以上转换过程中使用的编码方式与字节原有的编码不一致,很可能就会出现乱码。
  二、解决方法
  前面已经提到了Java程序与其他媒介交互时字符和字节的转换过程,如果这些转换过程中容易产生乱码。解决这些乱码问题的关键在于确保转换时使用的编码方式与字节原有的编码方式保持一致,下面分别论述(Java或JSP自身产生的乱码请参看第一部分)。
  1、JSP与页面参数之间的乱码
  JSP获取页面参数时一般采用系统默认的编码方式,如果页面参数的编码类型和系统默认的编码类型不一致,很可能就会出现乱码。解决这类乱码问题的基本方法是在页面获取参数之前,强制指定request获取参数的编码方式:request.setCharacterEncoding("GBK")或request.setCharacterEncoding("gb2312")。
  如果在JSP将变量输出到页面时出现了乱码,可以通过设置response.setContentType("text/html;charset=GBK")或response.setContentType("text/html;charset=gb2312")解决。
  如果不想在每个文件里都写这样两句话,更简洁的办法是使用Servlet规范中的过虑器指定编码,过滤器的在web.xml中的典型配置和主要代码如下:
  web.xml:
  CharacterEncodingFilter
  net.vschool.web.CharacterEncodingFilter
  encodingGBK
  CharacterEncodingFilter
  /*
  CharacterEncodingFilter.java:
  public class CharacterEncodingFilter implements Filter
  {
  protected String encoding = null;
  public void init(FilterConfig filterConfig) throws ServletException
  {
  this.encoding = filterConfig.getInitParameter("encoding");
  }
  public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException
  {
  request.setCharacterEncoding(encoding);
  response.setContentType("text/html;charset="+encoding);
  chain.doFilter(request, response);
  }
  }
  2、Java与数据库之间的乱码
  大部分数据库都支持以unicode编码方式,所以解决Java与数据库之间的乱码问题比较明智的方式是直接使用unicode编码与数据库交互。很多数据库驱动自动支持unicode,如Microsoft的SQLServer驱动。其他大部分数据库驱动,可以在驱动的url参数中指定,如如mm的mysql驱动:jdbc:mysql://localhost/WEBCLDB?useUnicode=true&characterEncoding=GBK。
  3、Java与文件/流之间的乱码
  Java读写文件最常用的类是FileInputStream/FileOutputStream和FileReader/FileWriter。其中FileInputStream和FileOutputStream是基于字节流的,常用于读写二进制文件。读写字符文件建议使用基于字符的FileReader和FileWriter,省去了字节与字符之间的转换。但这两个类的构造函数默认使用系统的编码方式,如果文件内容与系统编码方式不一致,可能会出现乱码。在这种情况下,建议使用FileReader和FileWriter的父类:InputStreamReader/OutputStreamWriter,它们也是基于字符的,但在构造函数中可以指定编码类型:InputStreamReader(InputStream in, Charset cs) 和OutputStreamWriter(OutputStream out, Charset cs)。
  4、其他
  上面提到的方法应该能解决大部分乱码问题,如果在其他地方还出现乱码,可能需要手动修改代码。解决Java乱码问题的关键在于在字节与字符的转换过程中,你必须知道原来字节或转换后的字节的编码方式,转换时采用的编码必须与这个编码方式保持一致。我们以前使用Resin服务器,使用smartUpload组件上传文件,上传文件同时传递的中文参数获取没有乱码问题。当在Linux中把Resin设置成服务后,上传文件同时的中文参数获取出现了乱码。这个问题困扰了我们很久,后来我们分析smartUpload组件的源文件,因为文件上传采用的是字节流的方式,里面包含的参数名称和值也是字节流的方式传递的。smartUpload组件读取字节流后再将参数名称和值从字节流中解析出来,问题就出现在smartUpload将字节流转换成字符串时采用了系统默认的编码,而将Resin设置成服务后,系统默认的编码可能发生了改变,因此出现了乱码。后来,我们更改了smartUpload的源文件,增加了一个属性charset和setCharset(String)方法,将upload()方法中提取参数语句:
  String value = new String(m_binArray, m_startData, (m_endData - m_startData) + 1 );
  改成了
  String value = new String(m_binArray, m_startData, (m_endData - m_startData) + 1, charset );
出处:http://www.enet.com.cn/article/2008/0229/A20080229170410.shtml

阅读更多 >>>  下载软件时为什么乱码

如何解决Java中的中文乱码问题

如果你的项目编码是utf-8的话,右键项目properties-->Resource-->others 下拉框改为utf-8。望采纳:)
对于Java,由于默认的编码方式是UNICODE,所以用中文也易出问题,常见的解决是:
String s2 = new String(s1.getBytes(“ISO-8859-1”),”GBK”);
1、utf8解决JSP中文乱码问题
一般说来在每个页面的开始处,加入:
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%
request.setCharacterEncoding("UTF-8");
%>
◆charset=UTF-8的作用是指定JSP向客户端输出的编码方式为“UTF-8”;
◆pageEncoding="UTF-8",为了让JSP引擎能正确地解码含有中文字符的JSP页面,这在LINUX中很有效;
◆request.setCharacterEncoding("UTF-8");是对请求进行了中文编码。
有时,这样仍不能解决问题,还需要这样处理一下:
String msg = request.getParameter("message");
String str=new String(msg.getBytes("ISO-8859-1"),"UTF-8");
out.println(st);

网站数据信息

"java输出中文乱码,java中文乱码问题"浏览人数已经达到21次,如你需要查询该站的相关权重信息,可以点击进入"Chinaz数据" 查询。更多网站价值评估因素如:java输出中文乱码,java中文乱码问题的访问速度、搜索引擎收录以及索引量、用户体验等。 要评估一个站的价值,最主要还是需要根据您自身的需求,如网站IP、PV、跳出率等!