If you are trying to determine the file contents under (Li)(U)nix, try the 'file' command. This program reports on the contents of a file as 'ascii text', 'ELF executable', 'data', etc. When it comes to 'ascii text', it is about 95% accurate because if you have a file that is mostly ascii characters but contains some null characters, it will report the file to be 'ascii text' when it should be 'data'. The only non-printable characters that should be in a pure 'ascii text' file are the line-feed (0x0a), carriage-return(0x0d), and if the file is generated as a printer compatible file, you may find form-feed(0x0c) characters. There is another character, tab(0x09), that can be in a text editor acceptable file, but unless the program reading the file is capable of expanding tabs to spaces, the data you are trying to pull from the ascii file may not align properly.
If you want to emulate the 'file' command under Windoze, write a small 'c' program that reads the first 4096 (+/-) characters or so and examine the data. If you find any non-printable characters other than line-feed(0x0a) or carriage-return(0x0d), I would reject the file as a candidate for 'pure-ascii' status, especially since you intend to use your file as data input to another system which may require the field data to be properly aligned.
BTW, how much data you read in the 'c' program is up to you. It needs to be enough to be a statistically significant representation of the target data.