【发布时间】:2024-05-18 11:00:02
【问题描述】:
这段代码:
io = StringIO.new "\xAF"
puts "\xAF".unpack('C')
puts (io.read 1).unpack('C')
puts 'Unequal' if io.read(1) != "\xAF"
打印:
175
175
Unequal
为什么两个字符串通过StringIO时不相等?显然它们都对应于值 175,但不知何故,它们并不相等。
【问题讨论】:
-
您从
io阅读了两次。第二次读取返回 nil。