PDA

View Full Version : سوال: مشکل در خروجی اکسل گرفتن



haamidd
چهارشنبه 10 تیر 1394, 17:37 عصر
سلام و خسته نباشید.
من کد زیر رو برای گرفتن خروجی استفاده میکنم و در اکثر مواقع همه چی درست هست و کلمات و عبارات فارسی هم بصورت همان فارسی و صحیح ذخیره میشود ولی بعضی وقت ها این خروجی ها بصورت شکل زیر است و درست نمایش نمیدهد داده های فارسی را.
132812

ممنون میشم اگر راهنمایی کنید و یا راهکاری ارائه دهید. ممنون


کد من که خروجی اکسل میده:


public void ExportExcel(SqlCommand cmd)
{
DataTable dt = new DataAccess().GetData(cmd);
if (dt.Rows.Count > 0)
{
//Create a dummy GridView
GridView GridView1 = new GridView();
GridView1.AllowPaging = false;
GridView1.DataSource = dt;
GridView1.DataBind();


HttpContext.Current.Response.Clear();
HttpContext.Current.Response.Buffer = true;
HttpContext.Current.Response.AddHeader("content-disposition",
"attachment;filename=DataTable.xls");
HttpContext.Current.Response.Charset = "";
HttpContext.Current.Response.ContentType = "application/vnd.ms-excel";
StringWriter sw = new StringWriter();
HtmlTextWriter hw = new HtmlTextWriter(sw);


for (int i = 0; i < GridView1.Rows.Count; i++)
{
//Apply text style to each Row
GridView1.Rows[i].Attributes.Add("class", "textmode");
}
GridView1.RenderControl(hw);


//style to format numbers to string
string style = @"<style> .textmode { mso-number-format:\@; } </style>";
HttpContext.Current.Response.Write(style);
HttpContext.Current.Response.Output.Write(sw.ToStr ing());
HttpContext.Current.Response.Flush();
HttpContext.Current.Response.End();
}
}

mehrzad_ali
چهارشنبه 10 تیر 1394, 17:42 عصر
متن رو Unicode کن

haamidd
چهارشنبه 10 تیر 1394, 20:21 عصر
من کدم رو اضافه کردم به سوالم، لطفا راهنمایی کنید و بگید که چکار باید بکنم، ممنون

haamidd
چهارشنبه 10 تیر 1394, 21:04 عصر
خب اقا من یکم تغییرات دادم همچی درست شد و نوشته ها هم بصورت صحیح و فارسی نمایش داده میشه ولی فقط فقد IdendifyNumber به همون شکل بالاست!
لطفا در مورد رفع این مشکل راهنمایی کنید، ممنون

haamidd
دوشنبه 15 تیر 1394, 21:07 عصر
دوستان یک همتی کنند...

FastDesign.ir
دوشنبه 15 تیر 1394, 22:19 عصر
سلام
کد خط استایل رو به کد زیر تغییر بده:

string style = @"<style> .textmode { mso-number-format:0; } </style>";

البته بهترش اینکه این استایل رو فقط به ستون عدد اضافه کنی نه به کل سطر.