# How to Write into multiple files?

Note: this is fixed in version 9.

I want to put expressions into multiple files simultaneously, with the following code:

tex1 = OpenWrite["test1.txt"];
tex2 = OpenWrite["test2.txt"];

Write[{tex1, tex2}, "anything"]

Close[tex1];
Close[tex2];


Why is test2.txt empty? Why does it work correctly with WriteString instead of Write? Now of course I can always Map the Write statements over streams, or just go with WriteString, but since it would be convenient to use a list as Write's first argument I did post this issue. Is it a bug?

According to the docs, both Write and WriteString should accept an "output channel," which is just a list of streams. On my system (v.8 on MacOS), Write behaves the same way as on your system when outputting anything, but WriteString behaves as expected.
Write[{tex1, tex2}, 3, 4];