c#将数字插入excel后,出现以文本形式存储的数字
privatevoidbtn_sure_Click(objectsender,EventArgse){//导入相关数据于Excel表格中//获取images文件夹下jpg...
private void btn_sure_Click(object sender, EventArgs e)
{ //导入相关数据于Excel表格中
//获取images文件夹下jpg文件数
int strNum = Convert.ToInt32( ImageArray.Count()); //ImageArray是一个数组,要取出这个数组的个数插入excel中
//将数据插入Excel中
string strsql = "insert into [Sheet1$](屏数) values(" + strNum + ")"; //插入数据
DoSql(strsql, "record.xls"); //Excel文件名为record.xls
}
private void DoSql(string strsql, string filepath)
{ //strsql指要执行的sql语句,filepath指Excel的路径
try
{
string ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + filepath + ";Extended Properties='Excel 8.0;HDR=no;IMEX=0'";//连接Excel OLEDB协议
OleDbConnection oledCon = new OleDbConnection(ConnectionString);//创建连接对象
oledCon.Open();//开启连接
OleDbCommand oledCom = new OleDbCommand(strsql, oledCon);
oledCom.ExecuteNonQuery();//执行sql语句
oledCon.Close();//关闭连接
}
catch (Exception err)
{
MessageBox.Show("Excel操作失败!失败原因:" + err.Message, "提示信息",
MessageBoxButtons.OK, MessageBoxIcon.Information);
}
}
我就用了这两个函数,但是excel中出来的数字是带有小三角的,说是
求大神帮忙解决下,直接在插入的时候就以数字插入,那个conver.toint32好像没用 展开
{ //导入相关数据于Excel表格中
//获取images文件夹下jpg文件数
int strNum = Convert.ToInt32( ImageArray.Count()); //ImageArray是一个数组,要取出这个数组的个数插入excel中
//将数据插入Excel中
string strsql = "insert into [Sheet1$](屏数) values(" + strNum + ")"; //插入数据
DoSql(strsql, "record.xls"); //Excel文件名为record.xls
}
private void DoSql(string strsql, string filepath)
{ //strsql指要执行的sql语句,filepath指Excel的路径
try
{
string ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + filepath + ";Extended Properties='Excel 8.0;HDR=no;IMEX=0'";//连接Excel OLEDB协议
OleDbConnection oledCon = new OleDbConnection(ConnectionString);//创建连接对象
oledCon.Open();//开启连接
OleDbCommand oledCom = new OleDbCommand(strsql, oledCon);
oledCom.ExecuteNonQuery();//执行sql语句
oledCon.Close();//关闭连接
}
catch (Exception err)
{
MessageBox.Show("Excel操作失败!失败原因:" + err.Message, "提示信息",
MessageBoxButtons.OK, MessageBoxIcon.Information);
}
}
我就用了这两个函数,但是excel中出来的数字是带有小三角的,说是
求大神帮忙解决下,直接在插入的时候就以数字插入,那个conver.toint32好像没用 展开
1个回答
展开全部
换种方式试试看:
oledCom.Parameters.Add(new OleDbParameter("@num", ImageArray.Count()) { DbType = DbType.Int32 });
PS:sql语句里面为
string strsql = "insert into [Sheet1$](屏数) values(@num)";
追问
还是一样。。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询