Hi everyone!
I need your help again... So I have this code now, which takes all columns from database I need. The X and the Y coordinates fields isn`t at the database. How do I add two new columns only in exporting CSV file ?
Thanks for any help!
import arcpy
import csv
fc = r"#"
out_csv = r"#.csv"
fields = ["#", "#"]
def tableToCSV(fc, out_csv):
fld_list = arcpy.ListFields(fc)
fld_names = [fld.name for fld in fld_list]
with open(out_csv, 'wb') as csv_file:
writer = csv.writer(csv_file, delimiter=';', lineterminator='\n')
writer.writerow(fields)
with arcpy.da.SearchCursor(fc, fields) as cursor:
for row in cursor:
writer.writerow(row)
print out_csv
csv_file.close()
tableToCSV(fc, out_csv)
Sorry, a bit confused here.
Are you asking how to get the XY coordinates out of the fc and into the text file? This is a point feature I take it.
just call the builtin rather than doing it the hard way
http://desktop.arcgis.com/en/arcmap/latest/tools/data-management-toolbox/add-xy-coordinates.htm
you can zip that into your script prior to csv'ing it ... check the code snippet at the bottom
To add Point_X and Point_Y attribute fields to a feature to export to csv or excel table, I like to use:
spatial_reference = arcpy.SpatialReference("WGS 1984")
# AddGeometryAttributes_management (Input_Features, Geometry_Properties, {Length_Unit}, {Area_Unit}, {Coordinate_System})
arcpy.AddGeometryAttributes_management(featurename,"POINT_X_Y_Z_M","#","#",spatial_reference)