我已经通过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
Ex1:
File.open("c:\file.txt") { |f| puts f.read }
Ex2:
txt = open("c:\file.txt")
print txt.read
Ex3:
File.readlines("c:\file.txt").each do |line|
var = line
puts var
end
请给我你宝贵的建议。
我在windows平台中执行此操作
这可能是file.txt
的问题,而不是您的代码的问题。正如@stefan所说,这可能是由于文件的UTF-16编码,而ruby使用环境的默认编码。例如,如果您的环境(您获得此结果的地方,即.powershell)设置为UTF-8,那么ruby将以UTF-8文件的形式读取该文件。
您可以使用:File.read("file.txt", encoding: <encoding>)
手动设置编码。其中<encoding>
是文件的类型。我建议看看这个可能有助于更好地理解这个问题。我还建议您查看file.txt
的编码,以了解其编码是什么。