2011-03-31 6 views
0

Microsoft.Jet.OLEDB.4.0 공급자를 통해 CSV를 구문 분석했습니다. 대부분의 작업에서 잘 작동하지만 최근에는 문제가 있음을 알게되었습니다.CSV 열이 null로 반환됩니다.

평점이라는 열이있는 CSV가 있는데, 일반적으로 정수이지만 가끔은 "1-2"또는 "1/1/2010"과 같은 날짜입니다. 내가 가져올 datatable 문자열을 명시 적으로 문자열로 설정되어 있지만 비 정수 필드를 읽을 때 대신 null입니다.

어떻게 생각합니까?

+0

이것을 데이터 세트로 읽어들입니까? 데이터 셋 열 유형이 정수가 아닌지 확인 하시겠습니까? –

답변

1

.csv가 들어있는 폴더에서 schema.ini 파일을 사용하고 열 데이터 형식을 올바르게 지정하십시오.

1

가능성이 높습니다. 열의 처음 몇 필드가 데이터 형식을 결정하기 위해 스니핑되고 다른 유형의 열이 나중에 삭제 될 가능성이 있습니다.

연결 문자열에 Extended PropertiesIMEX=1을 추가하면이 동작을 끌 수 있다고 생각합니다. 이것은 판독기를 Intermixed Mode로 설정하여 필드를 텍스트로 읽습니다. 그런 다음 다른 패스를 통해 직접 유형을 설정할 수 있습니다.

+0

이것을 시도 할 때 schema.ini 파일과 동일한 오류가 발생합니다. –