in reply to Escape Double Quotes

A comment unrelated to the question: Your code, while not wrong, will break if the CSV file contains data split over multiple lines (embedded newlines). Because of this, the recommended way to read a CSV file is with the getline method of Text::CSV (there's an example in the Synopsis). Also, it's usually a good idea to turn on the binary option.