November 2012
Intermediate to advanced
888 pages
54h 46m
Polish
Chcemy skorzystać z kodu odczytującego dane z pliku, lecz nasze dane wejściowe znajdują się nie w pliku, a w pamięci, w postaci łańcucha. Mamy także kod zapisujący dane do pliku, my jednak chcielibyśmy te dane otrzymać w postaci łańcucha.
Obiekty klasy StringIO są łańcuchami wyposażonymi w interfejs typowy dla klasy IO. Z jednej strony można je więc traktować jako pliki, z drugiej jednak dostępne są dla nich wszelkie dobrodziejstwa oferowane przez klasę String.
Oto przykład wykorzystania obiektu StringIO jako źródła danych...
require 'stringio' s = StringIO.new %{I am the very model of a modern major general. I've information vegetable, animal, and mineral.} s.pos # => 0 s.each_line ...