浏览 4691 次
锁定老帖子 主题:Ruby的UTF8
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2008-05-26
做了几天ruby的程序,关于日语和汉语的乱码问题做了一点研究 yaml文件可以是UTF8格式,ruby可以正常读取,但是记得一定是不带signature的UTF8格式 我使用的emeditor编辑器可以保存文件的时候选择这种UTF8 without signature的编码方式。 做ruby和ror程序,包括cygwin的gcc程序的最佳工具就是netbeans,现在最新版本是6.1 在netbeans的output窗口输出的文字也总是乱码,这时候需要手动修改在netbeans安装目录下的\etc\netbeans.conf 这一配置文件。在netbeans_default_options=”….的最后,引号之前空一个格,然后键入 引用 -J-Dfile.encoding=UTF-8
保存netbeans.conf,在vista 和 windows2008里这个目录有权限保护,需要改安全属性,才能保存成功。 重启netbeans应该可以解决output乱码的问题了。 在windows的console窗口显示UTF8,也是一个问题。 据说 chcp 65001 这个命令可以改变console的编码格式,值得一试 另外的办法就是安装cygwin UTF8, 使用cygwin代替一般的cmd console cygwin UTF8在这里:http://www.okisoft.co.jp/esc/cygwin-20.html 我没有装,因为我在windows2008安装的cygwin出现了问题,如下,百思不得其解,暂且作罢 引用 Huh? No /etc/fstab file? Using default root and cygdrive prefix...
bash: /usr/bin/tr: No such file or directory bash: /usr/bin/sed: No such file or directory $ 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2008-05-27
/etc/fstab 找不到是目前的cygwin的一个BUG,应该可以很快改好。
目前可以使用安装cygwin时选择 Prev 也就是前一个版本。 http://cygwin.com/ml/cygwin-apps/2008-05/msg00180.html 通过安装UTF-8 Cygwin是可以显示日文和中文的。 下载修改过的cygwin1.dll http://www.okisoft.co.jp/esc/utf8-cygwin/cygwin1-dll-20-04-21.tar.bz2 解压缩以后置换掉cygwin/bin下的同名文件。 然后修改home/yourname/下的.bashrc和.inputrc文件 将下面两个文件下载,将其内容拷贝到对应文件的最后。注意不要直接置换对应的文件。 http://www.okisoft.co.jp/esc/utf8-cygwin/.bashrc http://www.okisoft.co.jp/esc/utf8-cygwin/.inputrc 修改适当的字体,你可以用cat看到用UTF8 without signature编码的文件内容。 如果一个rb文件类似 $KCODE='u' p '日本語は大丈夫ですか' p '汉语也没问题吗!' 仍然在console上输出乱码 实在没有办法只有 开一个cygwin然后输入 tail -f log.txt 然后在另一个cygwin里面打log出来 ruby -Ku test.rb >> log.txt |
|
返回顶楼 | |
发表时间:2008-05-27
$KCODE='u'
p '日本語は大丈夫ですか' p '汉语也没问题吗!' 调试汉字的话,我一般用Log文件。 |
|
返回顶楼 | |
发表时间:2008-05-27
经过试验发现不使用单独安装 Ruby One-Click Installer
而使用cygwin的ruby版本就可以正常输出UTF8结果了 |
|
返回顶楼 | |