在ruby中读取文件,得到字符中空格的输出



我已经通过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的编码,以了解其编码是什么。

相关内容

  • 没有找到相关文章

最新更新