Ele*_*ios 3 ruby directory crc32 crc
我正在做一个简单的脚本来检查所有文件的crc ...
require "zlib"
exit if Object.const_defined?(:Ocra)
files = Dir.glob("*")
File.open('dir.txt', 'a+') do |file|
file.puts files
end
File.read('dir.txt').each_line { |line|
file = File.read(line) ; nil
file_crc = Zlib.crc32(file,0).to_s(16)
puts line, file_crc
}
Run Code Online (Sandbox Code Playgroud)
问题出在File.read('dir.txt').each_line { |line|
我收到此错误的行:
test.rb:13:in `read': Invalid argument - 1.exe (Errno::EINVAL)
from C:/Users/Administrador/Desktop/1.rb:13:in `block in <main>'
from C:/Users/Administrador/Desktop/1.rb:12:in `each_line'
from C:/Users/Administrador/Desktop/1.rb:12:in `<main>'
Run Code Online (Sandbox Code Playgroud)
PD:1.exe是"dir.txt"中列出的文件.
您是否检查过该行不包含额外字符?p line.
IIRC line将包含换行符,使用line.chomp.