示例#1
0
 def run_open_dialog(self):
     if self.open_dialog.run():
         self.init()
         #self.update_all()
         #self.fields_statusbar_label.set_text('Go!') 
         csv_filename = self.open_dialog.get_filename()
         reader = csv.get_reader( csv_filename )
         
         #this will fail if null bytes are found, as in xls files
         self.fields = reader.next()      
         
         error_found = False
         for i in range( len( self.fields ) ):
             if not self.fields[i]:
                 error_found = True
                 #raise CSV_Header_Exception, 'Empty Header Fields Found in CSV File :('
         if error_found:
             self.show_warning('Error: Empty Header Fields found in CSV File :(')
         
         is_data = True
         idx = 1
         while is_data:
             try:
                 self.fields_data.append( dict( zip( [ '_id_' ] + self.fields, [ idx ] + reader.next() ) ) )
                 idx += 1
             except (StopIteration):
                 is_data = False
示例#2
0
    def save_csv_file(self, filename, cols, data):
        if filename:
            writer = csv.get_writer( filename )

            #columns
            writer.writerow( cols )
                
            #rows
            for row in data:
                reordered = []
                for field in cols:
                    reordered.append( "%s" % ( row[field] ) )
                writer.writerow( reordered )