I have a program which read csv file of default format with double quotes: "A", "B", "C" by default. However, the assumption is that user may submit any bad character in csv. such as "A"", "B", "C" or A, B, C" or "A',"B",""C or A, B, C. Above is just some sample and it may have endless possibility. The key is to append empty column if there is less than n column in csv and remove extra column in csv. There maybe 10000 or more records and all of the rows in csv must be read and insert into a list. Note that the csv file cannot be rejected or throw exception due to invalid characters. How could it be done? I can't seem to find a common pattern for it.