如何在ruby中将txt文件转换为二进制文件

时间:2014-11-13 18:15:47

标签: ruby

我一直在寻找将标准txt文件转换为二进制文件的最佳实践,但仍然不能很好地理解它,并且想知道是否有人可以更好地解释它。所以我要说my_file.txt并希望将其转换为my_file.bin。一次转换整个文件的最佳做法是什么?我可以将整个文件写入新的.bin文件吗?或者我是否必须遍历文件并逐行转换等?

我尝试过诸如

之类的事情
old_text = File.open('my_file.txt').read
bin_file = File.new("my_file.bin","w+") # I understand w+ may not be the correct option
bin_file.puts(old_text)
bin_file.close

但是当尝试读取bin_file时,不会返回任何内容。有没有更好的做法来完成这个?

1 个答案:

答案 0 :(得分:2)

好消息! Ruby的字符串maniupulation已经涵盖在这里:

"some text".unpack('b*')

您可以通过http://ruby-doc.org/core-2.1.4/String.html#M000760

了解更多信息

您可以执行以下操作,将完整文件转换为二进制文件:

old_text = File.open('my_file.txt').read
bin_file = File.new("my_file.bin","w+") # I understand w+ may not be the correct option
bin_file.puts(old_text.unpack('b*'))
bin_file.close