기술 점수 = 새로운 StreamWriter를 (경로 1 StreamWriter를 사용 자상 거짓 Encoding.GetEncoding ( "GB2312")); 최종 문서 생성
클래스 데이터의 조합을 확인 2. StringBuilder의 SB = 새의 StringBuilder ()를 긴 문자열 일회용 엑셀 삽입
sb.append (ds.Tables [0] .Columns [K] .ColumnName.ToString () + "\의 t")는,
그 누락 될 수 없습니다 "\의 t" 이것은 매우 중요합니다! 새로운 TXT를 열고 다음 Tab 키를 입력, 2 Tab 키를 입력, 저장 3 Tab 키를 눌러를 입력 한 다음 엑셀 파일을 열 단지 txt 파일을 저장하기 : C #을 "\ (t)가"동일한 탭 키보드이기 때문에 [친구 시도 할 수 있습니다 원본을 찾을 오픈으로 당깁니다. 쓰기 123 개 단어를 각각 각 셀에있을 것입니다. 그래서 그냥 그렇게 한 시간의지도 데이터베이스에서 데이터의 더미를 연결하려면 위의 "\의 t"를 사용하고, 그들은 각 셀에 따라 채워집니다! ]를
참조해야
사용하여 System.Threading;
System.IO를 사용하여,
다음과 같다 :
개인 보이드 를 Button1_Click ( 오브젝트 송신자있는 EventArgs E) { saveFileDialog1.Title = " 保存的文件엑셀 " ; saveFileDialog1.InitialDirectory = " C : \\ " ; saveFileDialog1.Filter = " Excel97-2003 (* .XLS은) | * .XLS | 모든 파일 | * * (*. *). " ; saveFileDialog1.ShowDialog (); 경우 (saveFileDialog1.FileName == "" || saveFileDialog1.FileName == null이 ) { MessageBox.Show (" 文件名不能为空! " ); 반환 ; } 문자열 경로 = saveFileDialog1.FileName; 문자열 은 constr = " 데이터 원본 =; 초기 카탈로그 전시; 사용자 ID = sa를; 비밀 번호 = " ; 문자열 SQL = GetStrSql (); 데이터 세트 (DS) = 새로운 데이터 세트 (); 사용 (도록 SqlConnection 콘 = 새 도록 SqlConnection (constr에)) { 하여 SqlDataAdapter DA = 새로운 SqlDataAdapter를 (SQL, 절약); da.Fill (DS); } IF (DS == null이 ) { MessageBox.Show ( " ! 나쁜 데이터 수집 " ) 반환 ; } WriteExcel (DS, 경로); } 공공 무효 WriteExcel (DS 데이터 집합, 문자열 경로) { 은 try { 긴 에서는 totalCount = DS. 테이블 [ 0 ] .Rows.Count; lblTip.Text = " 총 " + +에서는 totalCount " 개의 데이터." ; (Thread.sleep를 {1,000 ); 긴 rowRead = 0 ; 플로트 퍼센트 = 0 ; StreamWriter는 SW = 새로운 StreamWriter를 (경로, 거짓 , Encoding.GetEncoding ( " GB2312 " )); 모두 StringBuilder SB = 새 의 StringBuilder (); 대 ( INT에서 K = 0 ; K <ds.Tables [ 0 ] .Columns.Count; ++ 케이 ) sb.Append (ds.Tables [ 0 ] .Columns [K] .ColumnName.ToString () + " \의 t를 " ); } sb.Append (Environment.NewLine); 위한 ( int로 I = 0 ; I는 ds.Tables [< 0 ] .Rows.Count 난 ++ ) { rowRead은 ++ ; 백분율 = (( 플로트 ) ( 100 * rowRead)) / 에서는 totalCount; Pbar.Maximum = ( INT )에서는 totalCount; Pbar.Value = ( INT ) rowRead; lblTip.Text = " 正在写入[" + percent.ToString ( " 0.00 " ) + " %] ...的数据" ; System.Windows.Forms.Application.DoEvents () 대 ( INT의 J = 0 ; J <ds.Tables [ 0 ] .Columns .Count, J ++ ) { sb.Append (ds.Tables [ 0 ] .Rows [I] [J]로 .toString () + " \의 t ' ); } sb.Append (Environment.NewLine); } sw.Write (sb.ToString ()); SW. 플러시 (); sw.Close (); MessageBox.Show는 ( " 이미 지정된 엑셀 파일을 생성! " ); } 캐치 (예외 EX) { MessageBox.Show (ex.Message); } } 공공 문자열 GetStrSql () { 문자열 STRSQL =를 "D를 선택한다. *에서 ( '36'다음 '1'그렇지 않으면 '0'말단) 1.1 号 馆, 최대 다음 '37'을 (케이스 halldoorid '1'그렇지 않으면 '0'말단을 때 cBarcode 맥스 (케이스 halldoorid를 선택 ) [2.1 号 馆, 최대 (케이스 halldoorid '38'다음 '1'그렇지 않으면 '0'끝) 3.1 号 馆, 최대 (케이스 halldoorid '39'다음 '1'그렇지 않으면 '0'끝) 4.1 号 馆, 최대 (케이스 halldoorid 40 ''다음 '1'그렇지 않으면 '0'끝) 5.1 号 馆, 최대 (케이스 halldoorid '41'다음 '1'그렇지 않으면 '0'끝) 6.1 号馆, 최대 (케이스 halldoorid 42 ''다음 '1'그렇지 않으면 '0'끝) 8.1 号 馆, 최대 (케이스 halldoorid '43'다음 '1'그렇지 않으면 '0'끝) 1.2 号 馆] 맥스 ( '44'다음 '1'그렇지 않으면 '0'단부를 케이스 halldoorid) 2.2 号 馆, 최대 (케이스 halldoorid은 '45'을 때다음 '1'그렇지 않으면 '0'말단) 3.2 号 馆, 최대 46 ''다음 '1'그렇지 않으면 '0'단부 (케이스 halldoorid) 4.2 号 馆, 최대 (케이스 halldoorid 후 '47'하면 ' 1 '그렇지 않으면'0 '말단) 5.2 号 馆, 최대 (케이스 halldoorid'48 '다음'1 '그렇지 않으면'0 '끝) 9.1 号 馆, 최대 (케이스 halldoorid시'49 '를 다음'1 ' 그렇지 않으면 '0'말단) 10.1 号 馆, 최대 50 ''다음 '1'그렇지 않으면 '0'단부 (케이스 halldoorid) 11.1 号 馆, 최대 (케이스 halldoorid하는 '51'다음 '1'다른 ' 0 '말단) 12.1 号 馆, 최대 (케이스 halldoorid'52 '다음'1 '그렇지 않으면'0 '끝) 13.1 号 馆, 최대 (케이스 halldoorid하는'53 '다음'1 '그렇지 않으면'0 ' 단부) 9.2 号 馆, 최대 (케이스 halldoorid하는 '54'다음 '1'그렇지 않으면 '0'말단) 10.2 号 馆]맥스 ( '55'다음 '1'그렇지 않으면 '0'단부를 케이스 halldoorid) 11.2 号 馆, 맥스 ( '56'다음 '1'그렇지 않으면 '0'단부를 케이스 halldoorid) 12.2 号 馆, 최대 ( '57'다음 '1'그렇지 않으면 '0'단부를 케이스 halldoorid) 13.2 号 馆, 최대 '58'다음 '1'그렇지 않으면 '0'단부 (케이스 halldoorid) 9.3 号 馆, 최대 (케이스 halldoorid '59'다음 '1'그렇지 않으면 '0'말단) 10.3 号 馆, 최대 (케이스 halldoorid '60'다음 '1'그렇지 않으면 '0'끝) 11.3 号 馆, 최대 (케이스 halldoorid '이되면 61 '다음'1 '그렇지 않으면'0 '말단) VIP3.2 号 馆, 최대 (케이스 halldoorid'62 '다음'1 '그렇지 않으면'0 '끝) VIP11.3 号 馆, 최대 (케이스 halldoorid 다음, '63', '1'그렇지 않으면 '0'끝) VIP14.cBarcode 의해 tblReadCard 그룹의 홀 3])에 가입 왼쪽에는 D 그룹 cBarcode 그래피 (행 cBarcode 뷰어 바코드를 선택 (cReadDate tblReadCard에서 cReadDate '2011-07-08'내지 '2011-07-11'구별 cBarcode 해당) d.cBarcode = C)이 C. cBarcode [홀 호 1.1]으로 잠재 고객 바코드 기 [홀 호 2.1], [홀 호 3.1], [제 홀 4.1], [홀 호 5.1], [홀 호 6.1] [제 홀 8.1], [1.2 홀 호], [제 홀 2.2], [3.2 홀 호], [홀 4.2], [5.2, 홀], [제 홀 9.1], [제 홀 10.1], [ 제 홀 11.1] [12.1 홀 호], [제 홀 13.1], [제 홀 9.2], [제 홀 10.2] [11.2 홀], [제 홀 12.2] [13.2 홀], [제 93 홀], [홀 호 10.3] [11.3 홀 호], [제 VIP3.2 박물관], [제 VIP11.3], [제 VIP14.3 홀][제 홀 9.2], [제 홀 10.2] [11.2 홀], [제 홀 12.2] [13.2 홀], [제 93 홀], [제 홀 10.3] [11.3 홀 호], [VIP3 제 홀 0.2], [제 VIP11.3 홀], [제 VIP14.3 홀][제 홀 9.2], [제 홀 10.2] [11.2 홀], [제 홀 12.2] [13.2 홀], [제 93 홀], [제 홀 10.3] [11.3 홀 호], [VIP3 제 홀 0.2], [제 VIP11.3 홀], [제 VIP14.3 홀]" ; 반환 ; STRSQL을 }