Hello everyone, I am working on my first professional programming project, and so far it's been pretty good, but I have a small problem. The project is being developed in Ruby on Rails, but involves dealing with a legacy database full of old usernames/passwords which are still being used. The passwords are encrypted via some hashing method, but for internationalization purposes, they are first converted to Unicode strings before being hashed. This is the part that is not working - the hashed String password and hashed Unicode password are totally different. I've been thinking about it and just can't figure how to turn a standard ::String into a Unicode string. Any help or insights would really really really be appreciated!
on 2007-06-21 17:51
on 2007-06-22 10:13
firstname.lastname@example.org wrote: > turn a standard ::String into a Unicode string. Any help or insights > would really really really be appreciated! "Unicode" is not a format. Rails strings are UTF-8, which is a particular unicode encoding. You need to know which unicode encoding your target strings are in. Once you know that, you need to look at Iconv. It's part of the Ruby standard library set. Pete Yandell http://notahat.com/
on 2007-06-22 14:36
You can use Iconv. perhaps those two methods I use might help you ? you can change the encoding to get what you want, eg. unicode string as UTF-16 def to_iso8859_1(value) Iconv.iconv('ISO-8859-1','UTF-8', value).join end def to_utf_8(value) Iconv.iconv('UTF-8','ISO-8859-1', value).join end email@example.com schrieb: