##
# Checks that a string is valid UTF-8 by trying to convert it to UTF-8
# using the iconv library, which is in the standard library.
- if String.new.respond_to?("valid_encoding?")
- def self.valid?(str)
- return true if str.nil?
- return str.valid_encoding?
- end
- else
- require 'iconv'
+ def self.valid?(str)
+ return true if str.nil?
- def self.valid?(str)
- return true if str.nil?
- Iconv.conv("UTF-8", "UTF-8", str)
- return true
- rescue
- return false
- end
+ str.valid_encoding?
end
end