我从数据库中获取数据到我的数据集是,然后我绑定到我的转发器控件,但它显示像“安东尼王子G”。它消除了空间 并且我将这些数据导出到excel中,在excel中也删除了空格 我在数据库中需要显示数据。有任何想法来解决这个问题。
在堆栈溢出问题框中还删除了两个单词之间的更多空格
我的Excel编码:
DataTable dt = new DataTable("Report");
DataRow dr;
dt.Columns.Add("Name");
for (int i = 0; i < dt_Status.Rows.Count; i++)
{
dr = dt.NewRow();
dr["Name"] ="<pre>"+ dt_Status.Rows[i]["NAME"].ToString() +"</pre>";
dt.Rows.Add(dr);
}
HttpResponse response = HttpContext.Current.Response;
// first let's clean up the response.object
response.Clear();
response.Charset = "";
// set the response mime type for excel
response.ContentType = "application/vnd.ms-excel";
response.AddHeader("Content-Disposition", "attachment;filename=Report.xls");
// create a string writer
using (StringWriter sw = new StringWriter())
{
using (HtmlTextWriter htw = new HtmlTextWriter(sw))
{
// instantiate a datagrid
DataGrid dg = new DataGrid();
dg.DataSource = dt;
dg.DataBind();
dg.RenderControl(htw);
response.Write(sw.ToString());
response.End();
}
}
更新我的代码后,我得到了excel输出:
我需要在一个单元格中显示。
答案 0 :(得分:3)
html无法识别多个空格。
您将数据放在<pre></pre>
代码之间,以表示是按格式化的。
或者您可以用
替换空格。这是non breaking space character。
空格用于格式化你的html代码,因此如果你有多个空格,它就会被包装成一个。
答案 1 :(得分:0)
一个简单易用的东西:
string value = String.Join(" ", "Prince Antony G".Split(new char[] {' '},
StringSplitOptions.RemoveEmptyEntries));