Excel导入导出时数据类型转换问题!!!!

maxch1225 2009-12-31 09:49:02
大家好!
我在把数据导入excel保存的时候,比如int型的12,45等在excel中他都是以文本形式保存的!
我想问问大家有没有办法把它以数字类型保存呢!!
谢谢!
...全文
2685 36 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
36 条回复
切换为时间正序
请发表友善的回复…
发表回复
liushengmz 2009-12-31
  • 打赏
  • 举报
回复
你在导入EXCEL文件时有列类型可选择的,可以对每一列进行选择
  • 打赏
  • 举报
回复
呵呵,不用谢。
随便提个醒,GRID中有日期或时间类型的数据导出时也要注意一下:如果不设置类型的话,输出的文件中日期和时间类型可能显示不全或格式错误。。。所以采用在数据绑定的事件中绑定每一列需要的输出类型的方法,这样开发的时候比较灵活,先试试看哪种更方便^_^。

[Quote=引用 16 楼 maxch1225 的回复:]
呵呵!也谢谢14楼的!!
[/Quote]
yijianxiangde100 2009-12-31
  • 打赏
  • 举报
回复
从Excel读取出来之后,然后按照你想要的转换啊。转换为数据库类型,然后添加到数据库不就行了嘛
maxch1225 2009-12-31
  • 打赏
  • 举报
回复
呵呵!也谢谢14楼的!!
maxch1225 2009-12-31
  • 打赏
  • 举报
回复
12楼的我先试试看!先谢了啊!?
  • 打赏
  • 举报
回复
正好做完,请参考--
EXCEL输出类型:
1) 文本:vnd.ms-excel.numberformat:@
2) 日期:vnd.ms-excel.numberformat:yyyy/mm/dd
3) 数字:vnd.ms-excel.numberformat:#,##0.00
4) 货币:vnd.ms-excel.numberformat:¥#,##0.00 vd;k;
5) 百分比:vnd.ms-excel.numberformat: #0.00%

具体调用(在GridView的RowDataBound事件中写):

protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
//你要绑定的数据类型的列
e.Row.Cells[1].Attributes.Add("style", "vnd.ms-excel.numberformat:@");
// 你要绑定的日期类型的列
e.Row.Cells[2].Attributes.Add("style", "vnd.ms-excel.numberformat:yyyy/mm/dd hh:mm:ss");
// 以此类推...
}
}
maxch1225 2009-12-31
  • 打赏
  • 举报
回复
[Quote=引用 10 楼 huangzhilong 的回复:]
怎样导出成为excel表??嘻嘻
[/Quote]
这个很简单!网上也有很多!

strComm = "insert into [Sheet1$] (数量,单价,总价) values ('" + TabXu.Rows[i][16].ToString() + "','" + TabXu.Rows[i][17].ToString() + "','" + TabXu.Rows[i][18].ToString() + "')";
string strConn = "provider=Microsoft.Jet.OLEDB.4.0;data source=" + _fileName + ";Extended Properties=Excel 8.0;";
OleDbConnection oleConn = new OleDbConnection(strConn);
OleDbDataAdapter oleAdap = new OleDbDataAdapter(strComm, oleConn);
DataSet ds = new DataSet();
oleConn.Open();
oleAdap.Fill(ds, "ExcelData");
oleConn.Close();

各位也帮我看看吧!
这是把数据添加到excel表中的!
我把数量,和单价都转成int型再添加也是不行的!!!
实在不知怎么办了!!!
thecityofsky 2009-12-31
  • 打赏
  • 举报
回复
不会吧 我导出的都是数字都是以数字保存的 一些文本形式的数字串也是以数字保存的
下面是导出到excel的代码
    private void ExportToExcel(string filename)
{
string str = DateTime.Today.Year.ToString() + DateTime.Today.Month.ToString();
string s_filename = str +filename+ ".xls";
Response.Clear();
Response.Buffer = true;
Response.AppendHeader("Content-Disposition", "attachment;filename=" + s_filename);
Response.ContentEncoding = System.Text.Encoding.Default;//设置输出流为简体中文
Response.ContentType = "application/ms-excel";//设置输出文件类型为excel文件。
this.EnableViewState = false;
System.Globalization.CultureInfo myCItrad = new System.Globalization.CultureInfo("ZH-CN", true);
System.IO.StringWriter oStringWriter = new System.IO.StringWriter(myCItrad);
System.Web.UI.HtmlTextWriter oHtmlTextWriter = new System.Web.UI.HtmlTextWriter(oStringWriter);
this.GridView1.RenderControl(oHtmlTextWriter);
//Response.ContentEncoding = System.Text.Encoding.GetEncoding("utf-7");
//Response.Charset = "GB2312";
Response.Write(oStringWriter.ToString());
Response.End();

}

public override void VerifyRenderingInServerForm(Control control)
{
//base.VerifyRenderingInServerForm(control);
}
cczdp 2009-12-31
  • 打赏
  • 举报
回复
如果你是使用ADO的方式,应该是没办法.
daxia1144 2009-12-31
  • 打赏
  • 举报
回复
怎样导出成为excel表??嘻嘻
maxch1225 2009-12-31
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 panzhaojl 的回复:]
  选中某列,右键-设置单元格格式-数字-数值
[/Quote]
这个我在excel中设置后,导入之后还是那个样!还是以文本的形式保存的!

帮忙啊!高手们!
maxch1225 2009-12-31
  • 打赏
  • 举报
回复
谢谢上面两位!
在程序中有办法解决吗!?
就是保存在excel中的直接就是数字。
qqzeng-ip 2009-12-31
  • 打赏
  • 举报
回复
直接改 使用INT函数啊=INT(A1) 假定您的原数值在A1!
panzhaojl 2009-12-31
  • 打赏
  • 举报
回复
这里面很多转换的
panzhaojl 2009-12-31
  • 打赏
  • 举报
回复
选中某列,右键-设置单元格格式-数字-数值
maxch1225 2009-12-31
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 zqd5920 的回复:]
你在网上搜搜吧!这类问题好像很多!我没有做过!原谅不能帮你
[/Quote]
谢谢!帮我顶一下也好!
平生我自如 2009-12-31
  • 打赏
  • 举报
回复
你在网上搜搜吧!这类问题好像很多!我没有做过!原谅不能帮你
maxch1225 2009-12-31
  • 打赏
  • 举报
回复
加到100了!!来个人帮忙啊!?
maxch1225 2009-12-31
  • 打赏
  • 举报
回复
自己顶!
Code従業員 2009-12-31
  • 打赏
  • 举报
回复
insert into [Sheet1$] (数量,单价) values (12,25)
\\就OK了,只有字符型才加引号。
加载更多回复(16)

111,093

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • AIGC Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧