#Test code:
import csv
import traceback
class excel_mac(csv.Dialect):
delimiter = ','
quotechar = '"'
doublequote = True
skipinitialspace = False
lineterminator = '\r'
quoting = csv.QUOTE_MINIMAL
csv.register_dialect("excel_mac", excel_mac)
class excel_unix(csv.Dialect):
delimiter = ','
quotechar = '"'
doublequote = True
skipinitialspace = False
lineterminator = '\n'
quoting = csv.QUOTE_MINIMAL
csv.register_dialect("excel_unix", excel_unix)
testdata = range(10)
for dialect in ["excel","excel_unix","excel_mac"]:
try:
print '\n Testing dialect "%s"' % dialect
test = file('test.csv','w')
writer = csv.writer(test,dialect=dialect)
for i in range(3):
writer.writerow(testdata)
test.close()
test = file('test.csv','r')
reader = csv.reader(test,dialect=dialect)
for row in reader:
print row
except:
traceback.print_exc()
#Results
"""
Testing dialect "excel"
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
Testing dialect "excel_unix"
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
Testing dialect "excel_mac"
Traceback (most recent call last):
File "/Users/lmeyn/Desktop/testcsv.py", line 36, in ?
print row
Error: newline inside string
"""
|