我已经通过powershell脚本将变量输出存储到文件中。
例如:7644511AAFCFBA6A0CC4706F3AA795BB86
存储在file.txt
之后我从文件中读取数据并使用ruby脚本将其存储在变量中。
当我打印变量时,它打印数据之间的空格。
例如:■7 6 4 4 5 1 1 A A F C F B A 6 A 0 C C 4 7 0 6 F 3 A A 7 9 5 B B 8 6 E D 5 3 3 0
我想将数据存储在一个变量中,但不包含字符之间的任何空格。 我尝试了很多,但找不到解决方案。
file.txt
文件中的内容:
7644511AAFCFBA6A0CC4706F3AA795BB86ED5330
练习1:
File.open("c:\\file.txt") { |f| puts f.read }
练习2:
txt = open("c:\\file.txt")
print txt.read
Ex3:
File.readlines("c:\\file.txt").each do |line|
var = line
puts var
end
请给我宝贵的建议。
我在Windows平台上这样做
答案 0 :(得分:1)
file.txt
可能是一个问题,而不是您的代码。正如@stefan所说,它可能是由于文件的UTF-16编码,而ruby使用你环境的默认编码。例如,如果您的环境(您获得此结果的地方 - 即.. powershell)设置为UTF-8,ruby会将该文件读取为UTF-8文件。
您可以使用以下方式手动设置编码:File.read("file.txt", encoding: <encoding>)
。其中<encoding>
是文件的类型。我建议看看这可能有助于更好地理解问题。我还建议您查看file.txt
的编码,以了解其编码是什么。