我从Excel的第15个单元格中获取数据,并将其传递给TextBox
。结果,断线( ALT + Enter )没有通过,为什么?
这是一个例子:
我得到一个字符串:
Alex Ross096115976612 / 03 / 1990Test
我希望看到一些字符,如果可能的话,应该是断行。或者从4个单元格中获取4个字符串。
public DataTable ImportExceltoDatatable(string filepath)
{
string sqlquery = "Select * From [Лист1$]";
DataSet ds = new DataSet();
string constring = @"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + filepath + ";Extended Properties=\"Excel 12.0;HDR=YES;\"";
OleDbConnection con = new OleDbConnection(constring + "");
OleDbDataAdapter da = new OleDbDataAdapter(sqlquery, con);
da.Fill(ds);
DataTable dt = ds.Tables[0];
DataRow[] O = dt.Select("'O' > '0'");
Variables.Oo(O[0][14].ToString());
return dt;
}
private void button2_Click(object sender, EventArgs e)
{
dataGridView1.DataSource = ImportExceltoDatatable(Variables.path);
textBox1.Text += Variables.O;
...
}
答案 0 :(得分:1)
尝试将"\n"
替换为"\r\n"
或将Environment.NewLine
替换为excel的结果。
答案 1 :(得分:1)
根据您对我的评论的回复,听起来像\n
的简单替换就可以解决问题:
private string ConvertExcelLineBreaks(string text)
{
return text.Replace("\n", Environment.NewLine);
}
然后,您可以对ImportExceltoDatatable
方法稍作修改:
public DataTable ImportExceltoDatatable(string filepath)
{
// --- 8< ---
var textFromExcel = O[0][14].ToString();
Variables.Oo(ConvertExcelLineBreaks(textFromExcel));
}