class CsvProcessor:
def __init__(self, file_name, dict_fields):
self.file_name = file_name
self.dict_fields = dict_fields.split(",") # 필드명은 쉼표로 분리
self.data_list = []
def process_csv(self):
try:
# 파일을 열고 처리
csv_file = open(self.file_name, "r")
for line in csv_file:
columns = line.strip().split(",")
entry = {self.dict_fields[i]: columns[i] for i in range(len(self.dict_fields))}
self.data_list.append(entry)
csv_file.close()
except Exception as e:
# 새로운 Exception 발생 (원래의 Exception 포함)
raise RuntimeError("Failed to process the CSV file (%s): %s" % (self.file_name, str(e)))
def print_data(self):
for entry in self.data_list:
print(entry)
# 사용 예시
file_name = "./resources/data.csv" # CSV 파일 경로
dict_fields = "no,display,amount"
try:
processor = CsvProcessor(file_name, dict_fields)
processor.process_csv()
processor.print_data()
except RuntimeError as e:
print("Caught RuntimeError: %s" % str(e))
댓글 없음:
댓글 쓰기