当前位置:首页 » 编程语言 » java乱码转中文乱码

java乱码转中文乱码

发布时间: 2022-02-28 18:59:40

‘壹’ java文件乱码,不是中文乱码,是整个都乱码

我们在eclipse中打开java项目,发现中文都是乱码。

首先我们可以打开工具菜单“Project”--“Properties”。

    ‘贰’ java 琤字乱码转成utf-8还是乱码,求解决

    要看你的数据是不是UTF-8的,对中文来说还有其他几种编码,你可以试一下:

    GBK或者GB18030
    GB2312 是上面的子集
    Unicode
    还要确认不是BIG5汉字

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

    1. 设置工作空间的编码:

      编辑器的编码会影响到所有的项目中的字符的显示,可以说是作用最为广泛的设置,每一个项目都会受到这个设置的影响。点击菜单栏中的窗口(Window)— —选项(Preferences)。

      点击常规(General)— —工作空间(Wordspace),然后在右侧的文本文件编码格式(Text file encoding)中选择你想要设置的编码格式,系统默认的格式为GBK。

    2. 设置项目的编码:

      如果其他的项目中不存在乱码问题,只是个别项目显示时出现乱码,那么我们不需要设置工作空间的编码,只需要修改项目的编码即可。

      选中项目后,右键点击,在弹出的菜单中点击属性(Properties)。

      在弹出的属性窗口中,选择资源(Resource)— —点击选择Other(其他),然后选择你想要的编码格式。

    3. 设置单个文件的编码:

      只是个别文件出现了乱码,那么设置个别文件的编码格式就可以解决问题了。选中有乱码的文件,然后点击右键。

      在弹出的菜单中选择属性(Properties)。

      在弹出的属性窗口中选择资源,点击Other(其他)后设置个别文件的编码方式

    ‘肆’ java 中文乱码,把hello world改成中文的就会显示乱码!

    javac的时候价格参数。
    -encoding 你的文件时utf8编码的吗?

    如果是就这样
    javac -encoding utf-8 Java1_2.java

    ‘伍’ java中字符乱码转化的问题

    如果B接受编码方式也不能更改为和A一致,那么举个例子
    A GBK,B UTF-8
    B获取的内容乱码,
    String s=request.getParameter("字段名");
    这里s会乱码,可以做如下转换
    byte[] bytes=s.getBytes(" B当前的编码格式");
    String s=new String(bytes,"A的编码方式");
    这个时候s就正常了

    ‘陆’ java程序执行中文乱码如何解决

    看你编译没问题,运行时报乱码错误。说明是代码的编码跟DOS系统的编码不一致。
    DOS系统是ASCII码,你看一下你代码的编码是什么,应该不是ASCII码,你把你的代码编码转换成ASCII码试试先,不行再转成UTF-8试试,这样应该就解决了(如果是编码不一致的问题的话)

    ‘柒’ java中文乱码 为什么有时候只能处理前面中文,后面还是乱码

    这要看你系统本来默认是什么编码方式的了这很重要。
    在.java中声明的String变量的字符编码,是与当前文本编辑器使用的字符编码一致

    例如,在MyEclipse中,我设置的默认编码为GBK
    系统数据依照gbk的编码方式。使用str.getBytes("gbk")把数据还原(这点很重要),
    然后利用new String(str.getBytes("gbk"), "utf-8")把数据从gb2312转换成utf-8
    所以要清楚知道str.getBytes("gbk")这里的str字符本来是不是gbk编码的很重要,如果它是iso8859-1呢,那就会出错了。也许你不小心弄混了。就会时对时错了。

    记住:

    在.java中声明的String变量的字符编码,是与当前文本编辑器使用的字符编码一致
    例如,在MyEclipse中,我设置的默认编码为GBK
    则字符就是gbk编码格式。

    ‘捌’ java程序中文汉字会乱码

    首先要加一个utf-8过滤器以过滤post提交乱码问题;
    再在tomcat的server.xml文件中配置<Connector port="8080" protocol="HTTP/1.1"
    connectionTimeout="20000"
    redirectPort="8443" URIEncoding="utf-8"/>
    处理get提交乱码问题;
    注意在用了这2个配置后就不要再在程序中用getBytes对参数进行转码了

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

    读取文件的时候如果是用的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中文乱码问题

    server.xml
    tomcat配置文件

    修改

    <Connector port="8888" protocol="HTTP/1.1"
    connectionTimeout="20000"
    redirectPort="8443" URIEncoding="UTF-8" />

    试试看..

    热点内容
    有几家java培训机构 发布:2025-01-11 13:55:05 浏览:472
    搭建个人服务器缺点 发布:2025-01-11 13:54:13 浏览:372
    怎么用安卓的手机登录ios第五人格 发布:2025-01-11 13:44:11 浏览:765
    登陆Ftp重输密码 发布:2025-01-11 13:40:12 浏览:331
    解压神器有氧射击 发布:2025-01-11 13:33:04 浏览:851
    百度云的好友在哪个文件夹 发布:2025-01-11 13:32:13 浏览:746
    2级c语言试题 发布:2025-01-11 13:09:21 浏览:939
    rft屏幕代码编译 发布:2025-01-11 12:54:01 浏览:743
    安卓手机怎么清除后台 发布:2025-01-11 12:53:14 浏览:805
    sgm邮箱服务器地址 发布:2025-01-11 12:46:03 浏览:884