You didn't mention how you're writing your output file...If you're using a StreamWriter to write your output file, you should be able to just do this by calling Write(textLine + "\n") instead of WriteLine (textLine). Don't know if you're working with StreamWriters, but that's probably the easiest way I've found to work with large text files.
On Dec 19, 6:38 pm, AstroDrabb <[email protected]> wrote: > After more than 14 years developing on different systems and using > .Net since 1.0, I thought this would be a trivial problem. > > Today I was asked to parse and modify a 700+ MB file, it had to be > done today. I got it done. However, after slapping > together a program the original file and the finished file were not > the same size. They should be. > > After looking at the original file and the modified flat file, they > were off, the size diff was exactly 1 char per record/line > just about 1 million and 1 million bytes. Hmm. Same diff in file > size as number of records? OK. Easy. The original > file was in a *nix LF-only format. The processed file from .Net came > out in an MS CRLF. Ah. OK. > > There are plenty of tools to convert. I used Linux and dos2unix. > > However, I started to Google for a way to write the file with LF-only > so it is in *nix format from the get-go. Strangely, > Google showed just a bunch of freeware-type executable apps to do it. > I know that already. I was and am looking > for a straight way to write out a plain text file (US, no Unicode > needed) from C# from the get-go. > > Looking at the Encoding class I saw ASCII and other UTF-based typed. > I just want to write a plain ASCII file from C# > with *nix line endings of LF only. > > Has anyone done this? I know I can open and reprocess the file to fix > the line endings. However, I don't want to have > to do that since the file is usually 700+MB. I want to read through > it once, do the changes and write it out with and LF > EOL so it can be compressed and sent to another company for processing. > > Any tips? > > Thanks.
