# Unknown character print on irb or command prompt

**URL:** <https://www.ruby-forum.com/t/unknown-character-print-on-irb-or-command-prompt/192766>\
**Category:** Ruby\
**Created:** [August 5, 2010, 8:55am UTC](https://www.ruby-forum.com/t/unknown-character-print-on-irb-or-command-prompt/192766 "2010-08-05T08:55:19Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![pshah](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/p/a698b9/32.png) [@pshah](https://www.ruby-forum.com/u/pshah)\
**Post date:** [August 5, 2010, 8:55am UTC](https://www.ruby-forum.com/t/unknown-character-print-on-irb-or-command-prompt/192766/1 "2010-08-05T08:55:19Z")

</div>

hi,

I read html file using nokogiri. and its work fine.

But after read when i print it, it shows me unknown charater like

“â”¬Ã¡” in place of hello&nbsp;

so it looks like “helloâ”¬Ã¡”.

it create problem bcoz of &nbsp and ending tag.

If any know about its solution please help.

Thanks,  
Priyank S.

---

<div class="post-metadata">

**Author:** ![pshah](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/p/a698b9/32.png) [@pshah](https://www.ruby-forum.com/u/pshah)\
**Post date:** [August 5, 2010, 10:08am UTC](https://www.ruby-forum.com/t/unknown-character-print-on-irb-or-command-prompt/192766/2 "2010-08-05T10:08:05Z")

</div>

Try using  
p str  
or  
puts str.inspect  
or  
puts str.bytes.to\_a.inspect

to get a better look at what character codes are in there.

---

<div class="post-metadata">

**Author:** ![pshah](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/p/a698b9/32.png) [@pshah](https://www.ruby-forum.com/u/pshah)\
**Post date:** [August 5, 2010, 10:18am UTC](https://www.ruby-forum.com/t/unknown-character-print-on-irb-or-command-prompt/192766/3 "2010-08-05T10:18:03Z")

</div>

Brian C. wrote:

> Try using  
> p str  
> or  
> puts str.inspect  
> or  
> puts str.bytes.to\_a.inspect
> 
> to get a better look at what character codes are in there.

Hi

Thanks for reply,

But it is not useful for me if i use inspect it convert “hello\302\240”

i want simple space.

Thanks,  
Priyank S.

---

<div class="post-metadata">

**Author:** ![pshah](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/p/a698b9/32.png) [@pshah](https://www.ruby-forum.com/u/pshah)\
**Post date:** [August 5, 2010, 3:38pm UTC](https://www.ruby-forum.com/t/unknown-character-print-on-irb-or-command-prompt/192766/4 "2010-08-05T15:38:33Z")

</div>

Priyank S. wrote:

> But it is not useful for me if i use inspect it convert “hello\302\240”

That is useful.

It shows that the &nbsp; has been converted into the sequence \302\240  
(octal)  
or \xc2\xa0 (hex)

That happens to be the code for a non-breaking space in UTF-8, codepoint  
160:

$ irb19

> > 160.chr(“UTF-8”)  
> > =\> "Â "
> 
> > 160.chr(“UTF-8”).bytes.to\_a  
> > =\> [194, 160]
> 
> > 160.chr(“UTF-8”).force\_encoding(“ASCII-8BIT”)  
> > =\> “\xC2\xA0”

So the terminal you are trying to print it to is non-UTF-8. Perhaps a  
Windows box? You didn’t say what your platform was.

In that case, you need to re-encode it to the appropriate character set.
