【发布时间】:2013-06-07 07:19:36
【问题描述】:
这是任何 Web 服务接收到的 XML,
<diy>
<tag1>14</tag1>
<tag2>2.000000000000000e+000</tag2>
<tag3>2.800000000000000e+001</tag3>
</diy>
这是代码:
IEnumerable<XElement> xTag = from p in xmlDoc.Elements("document").Elements("xServ").Elements("b")
select p;
string tab = "<Table>";
foreach (var xTags in xTag)
{
tab += "<tr><td>" + Convert.ToString(xTags.Element("r").Element("Exp").Value) + "</td>";
tab += "<td>" + Convert.ToString(xTags.Element("r").Element("diy").Element("tag1").Value) + "</td>";
string s = Convert.ToString(xTags.Element("r").Element("diy").Element("tag2").Value);
string d = Math.Round(Convert.ToDouble(s)).ToString();
tab += "<td>" + d + "</td>";
tab += "<td>" + Convert.ToString(xTags.Element("r").Element("diy").Element("tag3").Value) + "</td>";
tab += "</tr>";
}
divTag.InnerHtml = tab + "</Table>";
当我使用 Math.Round() 时,它给了我“2,8E+16”!
如何在 ASP.NET 中将“2.000000000000000e+000”转换为“2”和“2.800000000000000e+001”转换为“28”?
【问题讨论】:
-
diy 是类,tag1,tag2,tag3 是成员?如果成员,那么哪种类型,即浮动或?。在网络服务类中
-
@dash:因为指数:2.0*10^0 = 2, 2.8*10^1 = 28。
-
这是 xml 文档的一部分。我没有生成,我是通过网络服务接收到的
-
结果是整数还是浮点数?
-
我在函数中使用这些,即 14 * 2 = 28。所以,它们应该是整数。