You can't do this, it isn't enough.
in reply to Re: Newlines: reading files that were created on other platforms
in thread Newlines: reading files that were created on other platforms
In some situations, mostly ugly ones involving CVS, you can end up with mixed carriage returns in the file. Some Mac person edits 50 lines in the middle and the result is a mixed mess.
So there are cases where doing anything by doing the two part, "detect the first and then process assuming it stays the same" just won't be good enough.
You really do need to do some preprocessing to "localize" all of the newlines.