Strange print

Hi all!
I have some text in russian. Then I’ve print it with puts I saw beatiful
text, but then use p operator text is “\353\317\314\314\305\304\326”.
How can I solve problem, because when using iconv the problem is same?

Valerij Kirjanov wrote:

Hi all!
I have some text in russian. Then I’ve print it with puts I saw beatiful
text, but then use p operator text is “\353\317\314\314\305\304\326”.
How can I solve problem, because when using iconv the problem is same?

The difference between puts obj and p obj is that the
former uses obj.to_s and the latter obj.inspect. Is
there a specific reason why you need to use p instead
of puts or did I misunderstand you?

E

Valerij KIR wrote:

Hi all!
I have some text in russian. Then I’ve print it with puts I saw
beatiful text, but then use p operator text is
“\353\317\314\314\305\304\326”. How can I solve problem, because when
using iconv the problem is same?

p uses String#inspect which I believe will always print something that
can
be safely interpreted as a Ruby string on 7 bit ASCII. You should use
puts instead of p - p is really rather a debugging / inspection untility
but not meant for normal program output (IMHO).

Kind regards

robert

This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.

| Privacy Policy | Terms of Service | Remote Ruby Jobs