日期:2014-05-18  浏览次数:20990 次

string.format无效?
for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
  {
  tmp = String.Format("{0:D}\n",Convert.ToDateTime(ds.Tables[0].Rows[i]["UpdateDate"]));
  Response.Write(tmp);
  ds.Tables[0].Rows[i]["UpdateDate"] = tmp;
  Response.Write(ds.Tables[0].Rows[i]["UpdateDate"]);
  }
结果如下:
2008年5月26日 2008-5-26 0:00:002008年5月26日 2008-5-26 0:00:00 
怪哉!

------解决方案--------------------
ds.Tables[0].Rows[i]["UpdateDate"]//因为是时间日期字段,所以存放字符串dataset不能识别,
ds.Tables[0].Rows[i]["UpdateDate"] = tmp; //没问题,object放进去了
Response.Write(ds.Tables[0].Rows[i]["UpdateDate"]);//问题出现了,dataset的数据类型是datetime,所以先转换成dateset然后datetime.tostring,就是你显示的样子了。
如果必须保存格式化后的字符串,可以再添加一列,类型为string,专门用来保存格式化后的日期