`
mypages
  • 浏览: 90336 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

中文乱码显示解决方法大全

阅读更多
中文乱码显示解决方法大全
操作日期:2008-11-08早上
操作环境:Ruby1.86、Rails2.1.2、MYSQL5、RadRails0.7.1
文章作者:Gevin QQ:1616569


   中文乱码显示问题普遍存在于各种编程语言中,开发J2EE的过程中也经常遇到这类问题,而影响中文显示的原因很多,数据传递的编码不同、开发工具的编码设置和数据库本身的编码问题都可能使得无法正常显示中文。
    这几天在学习ROR中也遇到了中文乱码的显示问题,包括数据库数据中文乱码显示和views的html.erb中的中文乱码显示等问题,解决的方法也不一样,现记录如下。

一、数据库中文乱码显示解决方法
现象:数据库中的中文数据将显示为????。


解决方法:
步骤1:安装MySQL时的字符集选择utf-8,若已安装但不是选择这个,可通过修改MySQL安装目录下的my.ini,修改代码default-character-set为:
[mysql]

default-character-set=utf8
步骤2:新建数据库和数据库表的时候也选择utf8
步骤3:修改ROR项目下的数据库配置文件database.yml,代码如下:
development:
adapter: mysql
database: department_development
encoding: utf8
host: localhost
username: root
password: xxxx

重启服务器,数据库中文乱码显示的问题已解决,浏览如下:



二、html.erb等文件的中文乱码显示问题解决方法
    除了读取数据库数据时中文会显示为乱码外,编写在html.erb等文件的中文也同样会显示乱码,此处主要讨论使用IDE工具编写的文件出现中文乱码的问题,因为用记事本编写时保存为utf-8的格式时就不会出现这种问题。

现象:


解决方法:
在新建Rails Project项目后,必须设置一下该Project的编码类型为UTF-8,设置的步骤如下:
右击“项目名称” | properties | 将“Text file encoding”设置为UTF-8,如图:


刷新页面,效果如下:



三、link_to 中文参数导致页面出错的问题
若将每条信息后面“Show Edit Destroy”改为“显示 修改 删除”后将浏览出错,即修改代码
    <td align="center"><%= link_to 'Show', department %></td>
    <td align="center"><%= link_to 'Edit', edit_department_path(department) %></td>
    <td align="center"><%= link_to 'Destroy', department, :confirm => 'Are you sure?', :method => :delete %></td>




    <td align="center"><%= link_to '显示', department %></td>
    <td align="center"><%= link_to '修改', edit_department_path(department) %></td>
    <td align="center"><%= link_to '删除', department, :confirm => 'Are you sure?', :method => :delete %></td>


解决此类问题的方法是:
在environment.rb文件中添加以下两句代码:
  $KCODE= "utf-8"
  ActionController::Base.default_charset=('utf-8')

浏览效果如下:


    现在的中文界面看起来是不是比起自动生成后的英文界面清晰、容易操作多了呀?(相对于中国人来说,如果是外国人就例外了啦。嘻嘻!!*^_^*)

分享到:
评论

相关推荐

    soapUI输入中文显示为乱码,响应报文中文乱码问题解决方法.txt

    soapUI输入中文显示为乱码 响应报文中文乱码问题解决方法

    Linux系统中文乱码解决完整方案

    通过这个解决方案,可以彻底解决 Linux 系统中文乱码问题,使所有的中文字符都可以正常显示。同时,本文档还提供了一些其他的解决方案和建议,旨在帮助 Linux 用户更好地解决中文乱码问题。 knowledge points: * ...

    在DELPHI中使用MyDAC连接MySQL数据库时中文显示乱码的解决方法

    ### 在DELPHI中使用MyDAC连接MySQL数据库时中文显示乱码的解决方法 #### 背景介绍 在软件开发过程中,特别是涉及到多语言环境的应用程序开发时,字符编码问题常常成为开发者需要解决的一个重要问题。对于使用...

    SecureCRT中文乱码解决方法

    "SecureCRT中文乱码解决方法" SecureCRT 是一款功能强大且高效的 SSH 客户端,可以与多种协议进行连接,包括 SSH、Telnet 和 rlogin 协议。然而,在使用 SecureCRT 连接 Linux 服务器时,可能会出现中文乱码的情况...

    LINUX中文乱码解决方法

    ### Linux中文乱码解决方法 在使用Linux操作系统的过程中,用户可能会遇到中文显示出现乱码的情况。这种情况通常是由于系统编码设置不正确或者环境变量配置不当所导致的。本文将详细介绍如何解决Linux中的中文乱码...

    C#接收json数据后中文乱码解决方法

    C#接收Json格式数据,中文出现乱码解决方法

    在eclipse中中文汉字乱码的解决方案

    Eclipse 中中文汉字乱码的解决方案 Eclipse 是一个功能强大且广泛使用的集成开发环境(IDE),但是在使用过程中,用户可能会遇到中文汉字乱码的问题。本文将为大家分享解决 Eclipse 中中文汉字乱码的方案,以便大家...

    乱码解决 乱码解决 乱码解决 乱码解决 乱码解决

    乱码通常指的是字符显示不正确或无法识别,这可能由于编码格式不匹配、文件损坏、程序设置不当等原因引起。下面将详细讨论乱码产生的原因、解决方案以及如何预防。 一、乱码产生的原因 1. **编码格式不一致**:...

    python OpenCV imshow()中文乱码问题解决方法之一

    python OpenCV imshow()中文乱码问题解决方法之一

    Matlab显示乱码的解决方法

    Matlab 显示乱码的解决方法 在使用 Matlab 时,可能会遇到 Command Window 显示乱码的问题,这是一种常见的错误,pecially 在中文 Vista 操作系统下。这种问题的成因是 Matlab 的默认字体是 Monospaced(等宽字体)...

    matlab2016b中文显示乱码解决办法

    matlab2016b中文显示乱码,修改lcdata.xml文件,进行覆盖安装。 具体操作说明见 https://blog.csdn.net/shuitianyiwu/article/details/122771225

    SecureCRT中文显示乱码问题的解决方法

    问题:vi编辑器编辑文件时文件中的内容中文显示乱码,但是直接使用linux系统terminal打开此文件时中文显示正常,确诊问题出现在客户端即SecureCRT的显示问题 解决方法: 1、修改远程linux机器的配置 [root@rhel ~]#...

    EL中文显示乱码的解决办法

    通过以上步骤,大部分EL中文显示乱码的问题都能得到解决。如果问题依然存在,可能需要进一步排查其他潜在因素,如中间件配置、第三方库的编码处理等。务必保证整个系统从输入到输出的每个环节都采用一致的字符编码,...

    中文软件在外文系统中显示乱码问题解决方法

    ### 中文软件在外文系统中显示乱码问题解决方法 #### 背景与问题概述 在使用中文软件时,可能会遇到一个常见的问题:当这些软件在外文操作系统(如英文版Windows)上运行时,界面中的中文字符可能出现乱码的情况。...

    ACCESS+ASP中文乱码问题的解决方法借鉴.pdf

    ACCESS+ASP中文乱码问题的解决方法借鉴 ...解决 ACCESS+ASP 中文乱码问题需要结合实际情况,选择正确的解决方法,并注意编码方式、字符集和编辑器设置等因素,以确保 Web 应用程序的中文字符正确显示。

    jspdf中文乱码解决方法.zip

    在使用jspdf库生成PDF文档时,经常遇到中文字符显示为乱码的问题。这通常是由于字符编码不兼容或缺少字体支持导致的。本教程将详细解释如何解决jspdf中文乱码的问题,帮助开发者顺利导出含有中文内容的PDF。 首先,...

    中文乱码总结出现的原因,及解决方法,包括数据库乱码

    中文乱码总结出现的原因及解决方法,包括数据库乱码 中文乱码是一个常见的问题,它可能出现在 Java 和 JSP 文件中,也可能出现在 Java 程序与其他媒介交互时。以下是中文乱码的原因和解决方法: Java 和 JSP 文件...

    keepass2在Ubuntu 15.10下中文乱码的解决办法.docx

    另一种解决 Keepass2 中文乱码的问题的方法是使用 FC_DEBUG=1 环境变量。在运行 Keepass2 之前,设置 FC_DEBUG=1 环境变量,可以帮助 Keepass2 查找程序用到的字体,从而解决中文乱码的问题。 Ubuntu Server中文...

Global site tag (gtag.js) - Google Analytics