【发布时间】:2011-08-02 15:25:00
【问题描述】:
下面的文字墙摘要:如何在 Ruby 中显示重音字符(以便它们通过 puts 等工作)?
你好!我正在为我的班级编写一个程序,它将用西班牙语显示一些句子。当我尝试在 Ruby 中使用重音字符时,它们无法正确显示(在 NetBeans 输出窗口(在 Java 中很好地显示重音字符)或命令提示符中)。
起初,我的一些代码甚至没有运行,因为我的数组中的重音字符抛出了 Ruby 中断器(我猜?)。我遇到了错误,比如 Ruby 期待一个右括号。
但我做了一些研究,找到了一个解决方案,将以下代码行添加到我的 Ruby 文件的开头:
# coding: utf-8
在 NetBeans 中,我的程序运行与这一行无关。但是我需要添加这一行才能让我的程序在命令提示符中成功运行。 (我不知道为什么。)
但是,我仍然在将字符实际显示到屏幕上时遇到问题。诸如“será”之类的词将在 NetBeans 输出窗口中显示为“seré”。在命令提示符下,它会绘制一些竖线字符(我不知道如何输入)。
做了更多的研究,我听说了:
$KCODE = 'UTF-8'
但我对此没有任何运气。
我使用的是 Ruby 1.8 和 1.9(我在不同的机器之间来回切换)。
谢谢, 德里克
【问题讨论】:
-
顺便说一句,它是
# encoding: utf-8。您使用的是哪个操作系统? -
这两种方式似乎都一样。我正在运行 OSX 和 Windows 7。两者都试过了;还没找到答案。
标签: ruby utf-8 non-ascii-characters