테이블을 Excel로 내보내는 표준 부호화 없음

2766 단어 Excel
Excel로 내보내는 데는 여러 가지 방법이 있는데 복잡한 형식에 대해 필자는 백그라운드에서 먼저 를 맞추고 Response 출력을 사용하는 것을 좋아한다.
만약에 데이터에 중국어나 특수한 문자가 포함되어 있다면 많은 규범에 맞지 않는 작법은 페이지의 코드를 혼란스럽게 할 수 있다. 여기서 가장 표준적인 형식을 여러분에게 가져다 드리겠습니다.
 
Page p = HttpContext.Current.Handler as Page;

p.Response.Clear();

p.Response.Buffer = true;

p.Response.Charset = "UTF-8";

p.Response.AppendHeader("Content-Disposition", "attachment;filename=" + HttpUtility.UrlEncode(filename, Encoding.UTF8) + ".xls");

p.Response.ContentEncoding = Encoding.UTF8;

p.Response.ContentType = "application/vnd.ms-excel";

p.EnableViewState = false;

p.Response.Write("<html><head><meta http-equiv='Content-Type' content='application/vnd.ms-excel; charset=utf-8' /></head>" + text + "</html>");

p.Response.End();

상기 코드는 두 가지를 주의해야 한다.
1) Charset/AppendHeader/ContentEncoding 모두 UTF8을 동일하게 사용해야 합니다.
2) text 안에
만 있으면 반드시 앞뒤에 를 붙여야 한다.진일보한 규범화를 위해 상기 코드 형식으로 작성하는 것을 건의합니다
3)'4340611210891797'이'4.340611210e+017'로 변하는 것을 방지하기 위해 자동 변환되지 않는 스타일을 추가하십시오
……

 
 
자, 이제 어쨌든 엑셀을 어떻게 내보내도 난자 문자가 없을 거예요.

좋은 웹페이지 즐겨찾기