2012-12-04 2 views
1

win32com.client 또는 Microsoft 소프트웨어에 종속적 인 다른 패키지를 사용하지 않고 .dbf 파일을 .csv 파일로 변환하는 가장 좋은 방법은 무엇입니까 (최소 컴퓨터 비용)?MS가없는 dbf를 CSV로 변환

답변

1

dbf package을 사용하여 dBase 파일을 읽을 수 있습니다. 이 패키지에는 CSV에 테이블을 직접 작성할 수있는 기능이 포함되어 있으며, 더 많은 제어가 필요한 경우 Writer class 표준 라이브러리 모듈에서 직접 작성할 수도 있습니다.

순수 파이썬이므로 가장 빠른 해결책은 아니지만 휴대용이어야합니다.

1

요즘 저는 ArcGIS 파일 지오 데이터베이스로 가져 오기 위해 CSV 파일을 준비하는 맥락에서 기본적이고 신속한 CSV를 dbf 변환에 사용하는 데 다음 코드를 사용하고 있습니다. 이 코드는 dbf package을 사용합니다.

import dbf, os 
def csv_to_dbf(inCSV,outDBF): 
    outFile = open(<temporary CSV>),'w') 
    with open(inCSV,'r') as f: 
     count = 0 
     for line in f: 
      if count == 0: header = line.rstrip("\n").split(",") 
      else: outFile.write(line) 
      count +=1  
    dbf.from_csv(csvfile=<temporary CSV>, field_names=header, filename= outDBF ,to_disk=True) 
    os.remove(<temporary CSV>)