A family of Microsoft spreadsheet software with tools for analyzing, charting, and communicating data.
The thing is that by definition the multi-byte groups are not ASCII. When a byte (as you read the file in sequence 1 byte at a time from start to finish) has a value of less than decimal 128 then it IS an ASCII character. But if when you read a byte and it's anything other than an ASCII character it indicates that it is either a byte in the middle of a multi-byte stream or it is the 1st byte of a mult-byte string. In order to even attempt to come up with a direct conversion you'd almost have to know the language (page code) that is in use on the computer that created the file. It may be using Turkish while on your machine you're trying to translate into Italian, so the same characters wouldn't even appear properly - but at least they should appear improperly in a consistent manner. I think you're just going to have to sit down and spend a lot of time 'decoding' what you're getting and create your own table. Either that or get with who ever owns the system building the files and tell them that they are NOT sending out pure ASCII comma separated files and ask for their assistance in deciphering what you are seeing at your end.
If you check out the read on this page http://www.joelonsoftware.com/articles/Unicode.html you'll find that the author is of the opinion that lots of people (developers) THINK they know about character sets, but are actually about as clueless as I generally am about them. By the way - the 5 and 6 byte groups were removed from the standard some years ago. Did you try running a test file through my code and looking at the output to see if it even looked reasonably close? Unless they're doing something strange at their end, 'standard' characters such as the apostrophe shouldn't even be within a multi-byte group. An apostrophe ' has ASCII decimal value of 39, while the grave ` has an ASCII decimal value of 96.
Here's the entire ASCII character set - some such as 7 (bell) and 10 and 13 are not-printable since most below decimal value 27 are considered to be "command" codes. You'll see that nothing is really visible until 41 - the ! mark, although the character at the right end of the row above is a true ASCII space character (right above the ( symbol). 1 ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~ 127 I cannot believe that this system threw away the entire grid and aligned them up as a single string of text characters! :( and even though it says it's accepting a graphic of the grid - it's not showing up either! And it seems to have removed all of the line feeds in the post making 1 huge paragraph out of what was written as at least 6 separate paragraphs.