0

データベースからデータセットにデータを取得ここに画像の説明を入力し、リピーター コントロールにバインドしますが、「Prince Antony G」のように表示されます。スペースを排除しました。
また、それらのデータをExcelにエクスポートします。Excelでもスペースが削除されました。
データベースにあるショーデータが必要です。この問題を解決するための任意のアイデア。

スタック オーバーフローの質問ボックスでは、2 つの単語の間のスペースも削除します

私の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 の出力は次のようになりました。

ここに画像の説明を入力

単一のセルに表示する必要があります。

4

2 に答える 2

3

html は複数のスペースを認識しません。

データをタグの間に入れて、<pre></pre>フォーマットされていることを示します。

または、スペースを に置き換えることもできます&nbsp;。これは非改行スペース文字です。

スペースは HTML コードの書式設定に使用されるため、複数のスペースがある場合は 1 つに折り返されます。

于 2012-09-12T07:28:48.693 に答える
0

シンプルで便利なもの:

string value = String.Join(" ", "Prince Antony G".Split(new char[] {' '}, 
StringSplitOptions.RemoveEmptyEntries));
于 2012-09-12T07:41:02.717 に答える