- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我发现自己不得不在 Windows 7(家庭高级版)上使用 Ruby,而且我在编码方面遇到了很多问题。只要我不需要控制台输入,我就相当不错,但现在我受阻了。
我正在使用 Powershell ISE 并执行命令 chcp 65001
使其成为 utf-8。我对 ruby 程序的输入仍然与 Ruby 内部的内容不兼容。我已经使用 RubyInstaller 1.9.3 安装了 Ruby。好的,那有什么问题呢?
我写了一个简短的例子:
# encoding: UTF-8
target = ARGV[0]
puts "string constant ="+ "dupą"
puts "dupą".bytes.to_a.to_s
puts "dupą".encoding
puts "target =" +target
puts target.bytes.to_a.to_s
puts target.encoding
puts target.eql? "dupą"
好了,现在让我们运行这个例子:
PS C:\Users\user\ruby\2> ruby example.rb dupą
string constant =dupą
[100, 117, 112, 196, 133]
UTF-8
target =dup�
[100, 117, 112, 185]
UTF-8
false
所以两个相同的字符串中的字节是不同的,但它们仍然被识别为 UTF-8。
显然我遗漏了一些东西。我错过了什么?
最佳答案
因为我的键盘上没有你的特殊字符,所以我使用了其他字符。您需要确保您的 ruby 脚本本身以 UTF-8 编码保存。然后试试这个,在第二行用你的替换 cp 。成功!!
# encoding: utf-8
target = ARGV[0].dup.force_encoding('CP1252').encode('UTF-8') # => true
#target = ARGV[0] # => false
puts "string constant = déjà"
puts "déjà".bytes.to_a.to_s
puts "déjà".encoding
puts "target =" +target
puts target.bytes.to_a.to_s
puts target.encoding
puts target.eql? "déjà" # =>true
关于ruby - Powershell ISE utf8 输入与 Ruby 的不同,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9972858/
我在 Windows 10 上安装了 Xilinx ISE 14.7。当我尝试打开 Project Navigator 时,它会在 Linux 虚拟机 (VM) 中打开。这意味着 Xilinx set
不知道为什么,但今天我的工作站拒绝加载 Powershell ISE。我可以很好地加载 Powershell,并且我的 cmdlet 可以正常工作。我曾尝试加载 32 位和 64 位 ISE,但出于同
我在这里有一个有趣的问题。我正在创建一个日历选择器,以便在创建帐户时使用。它可以正常工作,并且仍在进行中,但是我注意到,当我在Powershell ISE中运行脚本时,几分钟后它将锁定(在此之前,我可
是否可以使用一些类似 vim 的编辑模式或插件使 Powershell ISE 表现得像 vim? 在 netbeans 中,我使用 jVi ,并在 Visual Studio 中使用 VsVim ,
我正在使用 Powershell ISE 来运行构建脚本 - 该脚本又使用 MSBuild - 但是 - 它不允许 MSBuild 的文本颜色显示出来。 MSBuild 输出颜色编码的消息 - 黄色、
我对 Powershell ISE 控制台窗口感到困扰。命令行中没有自动换行功能。当我使用它时,如果我的命令行很长,我就会离命令太远。有没有办法固定命令行的宽度? 谢谢。 最佳答案 直接否,通过开发可
我在 Powershell ISE 中有一个脚本,我已通过点源将其添加到我的 ISE 配置文件(我拥有的唯一配置文件)中。每当我打开 ISE 时,加载的脚本版本是 3.7.2 .但是,脚本的当前版本(
我一直在努力更新我编写的一些脚本。我还在学习 PowerShell,所以我喜欢回顾我的旧版本,看看我是否可以改进。 我偶然发现了模块,并且非常喜欢使用它们来存储可以随时调用的不同操作的想法。 我写了一
当我们在导入的模块中设置断点时,调试器会忽略断点。有没有其他人看到过这种行为? 这让我抓狂,我们广泛使用 PowerShell 模块。 真正奇怪的是,如果我运行 get-psbreakpoint,我可
这是我在脚本中调用的函数: Function SetUp-ScheduledTasks { param ( [string]$Server = "", [string]$TaskNam
扩展this question ... 你如何在 Powershell ISE 中编写多行命令?反引号不起作用。 我说的是命令提示符窗口 C:\> 最佳答案 按 Shift+Return 可以输入多行
我想用豪华脚本自动打开 ISE 中最后打开的文件, 所以我尝试保存这些文件的文件路径,如下所示。 $action = { $psISE.CurrentPowerShellTab.Files | sel
当我尝试使用 Join-Object它抛出以下错误: The term 'join-object' is not recognized as the name of a cmdlet, functio
有没有办法强制 ISE 输出到控制台,而不是使用 Windows 表单? 例如: $host.ui.PromptForChoice($title, $message, $options, 0) 在 I
我在尝试启动 Powershell ISE 时遇到错误。启动以初始面板中显示的“正在加载”开始,然后出现一个对话框“发生意外错误,Windows PowerShell ISE 必须关闭”我用 Goog
我听说PowerShell ISE使用与VisualStudio 2010和Oslo IntelliPad相同的WPF文本编辑器。我知道您可以通过在编辑器的XAML文件中插入自己的WPF控件来扩展此编
我的 Powershell ISE 在启动时崩溃;我相信这是由于 ISE 从错误退出返回时正在加载的选项卡/文件。因此,我目前无法启动 ISE。我正在寻找 Powershell ISE 存储当前打开的
我使用控制台作为管理 mercurial 存储库的工具。使用经典的 cmd 或 Console2 我输入: hg in 控制台提示如下: D:\workspace\someproject>hg in
我遇到过一些情况,当您尝试使用 Ctrl+C 终止进程时,powershell ISE 会卡住。我仍然可以在控制台上移动光标,但状态停留在“正在停止”。 这已经发生在几个命令中,但我注意到一个特定的命
我在玩 powershell 这个想法很简单: 我想验证某个 TCP 端口是否打开。 现在,我可以将其作为 PowerShell 脚本运行,也可以在 ISE 中运行。 现在,在 ISE 中一切正常,脚
我是一名优秀的程序员,十分优秀!