each_char()
  public
  
    
    
Calls the given block once for each character
in ios, passing the character as an argument. The stream must be
opened for reading or an IOError will be
raised.
f = File.new("testfile")
f.each_char {|c| print c, ' ' }   
   
  
    Show source    
    
      static VALUE
rb_io_each_char(VALUE io)
{
    rb_io_t *fptr;
    rb_encoding *enc;
    VALUE c;
    RETURN_ENUMERATOR(io, 0, 0);
    GetOpenFile(io, fptr);
    rb_io_check_readable(fptr);
    enc = io_input_encoding(fptr);
    READ_CHECK(fptr);
    while (!NIL_P(c = io_getc(fptr, enc))) {
        rb_yield(c);
    }
    return io;
}