print "1..1\n"; #$IO::String::DEBUG++; use IO::String; $io = IO::String->new; print $io "Heisan\n"; $io->print("a", "b", "c"); { local($\) = "\n"; print $io "d", "e"; local($,) = ","; print $io "f", "g", "h"; } $foo = "1234567890"; syswrite($io, $foo, length($foo)); $io->syswrite($foo); $io->syswrite($foo, length($foo)); $io->write($foo, length($foo), 5); $io->write("xxx\n", 100, -1); for (1..3) { printf $io "i(%d)", $_; $io->printf("[%d]\n", $_); } select $io; print "\n"; $io->setpos(0); print "h"; local *str = $io->string_ref; select STDOUT; print $str; print "not " unless $str eq "heisan\nabcde\nf,g,h\n" . ("1234567890" x 3) . "67890\n" . "i(1)[1]\ni(2)[2]\ni(3)[3]\n\n"; print "ok 1\n";