No, the alternative here would be to just let the write()'s throw and let upstream handle them. You don't try/catch to catch an error just to re-throw it for the same reason you don't try/catch every single line of your program.
Exceptions are one reason other languages don't need this "if err throw err" code, without making a comment on if either is superior.