2014-07-19 2 views
0

나는 테이블의 VARBINARY (최대) 열에서 바이트 배열을 얻기 위해 노력하고 있어요 : -C에서 데이터베이스에서 바이트 배열을 검색하는 방법 #?

SqlDataAdapter sda=new SqlDataAdapter("select * from mine", sqlconn); 
    DataTable dt=new DataTable(); 
    sda.Fill(dt); 
    string fileName=dt.Rows[0][0].ToString(); 
    byte[] file = (byte[])dt.Rows[0][1]; 

하지만 예외가 얻을 : '시스템을 입력 유형'선택 System.String '의 개체를 캐스팅 할 수 없습니다입니다. 바이트[]'.

+0

System.Text.UTF8Encoding.ASCII.GetBytes (dt.Rows [0] [1]); – Rangesh

+3

열이 유형 문자열 인 것처럼 들리지만 테이블 정의는 무엇입니까? – VahidNaderi

답변

0

은 당신이 사용하는 것을 인코딩 잘 모르겠지만, 당신은 다음

byte[] File=System.Text.UTF8Encoding.ASCII.GetBytes(fileName); /**Customized Encoding**/ 

및 기본 .NET에 의해을 배열 바이트 문자열로 변환 할 경우 이렇게 사용, UTF16을 사용하는

byte[] File = System.Text.Encoding.Unicode.GetBytes(fileName); /**Default Encoding**/ 
관련 문제