|
|
|
#1 |
|
Messages: n/a
Hébergeur: |
I know that I can redirect my standard output to a file like this:
STDOUT.reopen(File.open(filename,'w')) But then, why can't I redirect it to a string like this? : output = StringIO.open('','w') STDOUT.reopen(output) > TypeError: can't convert StringIO into String Can somebody see what I am doing wrong? Thanks a lot! Fredrik |
|
|
|
#2 |
|
Messages: n/a
Hébergeur: |
On Nov 21, 2007, at 01:15 , Fredrik wrote: > I know that I can redirect my standard output to a file like this: > > STDOUT.reopen(File.open(filename,'w')) > > But then, why can't I redirect it to a string like this? : > > output = StringIO.open('','w') > STDOUT.reopen(output) >> TypeError: can't convert StringIO into String > > Can somebody see what I am doing wrong? >> $stderr = output => #<StringIO:0x404e8> >> warn "blah" => nil >> output.string => "blah\n" |
|
|
|
#3 |
|
Messages: n/a
Hébergeur: |
On Nov 21, 2007, at 02:18 , Ryan Davis wrote:
> On Nov 21, 2007, at 01:15 , Fredrik wrote: > >> I know that I can redirect my standard output to a file like this: >> >> STDOUT.reopen(File.open(filename,'w')) >> >> But then, why can't I redirect it to a string like this? : >> >> output = StringIO.open('','w') >> STDOUT.reopen(output) >>> TypeError: can't convert StringIO into String >> >> Can somebody see what I am doing wrong? > > >> $stderr = output > => #<StringIO:0x404e8> > >> warn "blah" > => nil > >> output.string > => "blah\n" Also: http://blog.segment7.net/articles/20...dout-vs-stdout -- Poor workers blame their tools. Good workers build better tools. The best workers get their tools to do the work for them. -- Syndicate Wars |
|
![]() |
| Outils de la discussion | |
|
|