Read each line of a CSV in a CRM File Upload field

Read each line of a CSV in a CRM File Upload field

I have a File Upload field on a custom module in CRM. Users create a record and upload a CSV into the field.

I want to create a workflow that on create:

1) Checks to see if the file is a CSV
2) Reads each field of each line of the CSV (into a map or a list potentially?)
3) Gives me the opportunity to manipulate the data and do various other stuff

I am fine with 1 and 3, but 2 seems to be eluding me.  Is this possible to do from CRM and if so, how do I do it?

Thanks

Matt