C#以编程方式从excel中包装文本

时间:2013-11-19 16:34:30

标签: c# excel

我有一个c#控制台程序,可以下载.xls文件,使用

转换为.csv文件
string strConn = "Provider=Microsoft.Jet.OLEDB.4.0;" + "Data Source=" + sourceFile + ";" + "Extended Properties=\"Excel 8.0;HDR=Yes;\"";

OleDbConnection conn = null;
StreamWriter wrtr = null;
OleDbCommand cmd = null;
OleDbDataAdapter da = null;
try
{
    conn = new OleDbConnection(strConn);
    conn.Open();


    cmd = new OleDbCommand("SELECT * FROM [" + worksheetName + "$]", conn);
    cmd.CommandType = CommandType.Text;
    wrtr = new StreamWriter(targetFile);

    da = new OleDbDataAdapter(cmd);
    DataTable dt = new DataTable();
    da.Fill(dt);

在其中一列中,文字需要自动换行。我怎样才能做到这一点?数据看起来像这样

"The District of Columbia
ZIP 11101.
"

该列实际上应为"The District of Columbia ZIP 11101."

2 个答案:

答案 0 :(得分:0)

提供文本后,应将单元格的IsTextWrapped样式设置为true

worksheet.Cells[0, 0].Style.IsTextWrapped = true;

答案 1 :(得分:0)

使用以下内容删除换行符:

string noWraps = source.Replace(Environment.NewLine, "");