本文整理汇总了C#中com.ximpleware.VTDNav.XPathStringVal2Double方法的典型用法代码示例。如果您正苦于以下问题:C# VTDNav.XPathStringVal2Double方法的具体用法?C# VTDNav.XPathStringVal2Double怎么用?C# VTDNav.XPathStringVal2Double使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类com.ximpleware.VTDNav
的用法示例。
在下文中一共展示了VTDNav.XPathStringVal2Double方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: evalNumber
/// <summary>
///
/// </summary>
/// <param name="vn"></param>
/// <returns></returns>
public override double evalNumber(VTDNav vn)
{
double d = Double.NaN;
int a = 0x7fffffff, k = -1;
vn.push2();
int size = vn.contextStack2.size;
try
{
while ((k = evalNodeSet(vn)) != -1)
{
//a = evalNodeSet(vn);
if (k < a)
a = k;
}
if (a == 0x7fffffff)
a = -1;
if (a != -1)
{
int t = vn.getTokenType(a);
if (t == VTDNav.TOKEN_ATTR_NAME)
{
d = vn.parseDouble(a + 1);
}
else if (t == VTDNav.TOKEN_STARTING_TAG || t == VTDNav.TOKEN_DOCUMENT)
{
d = vn.XPathStringVal2Double(a);//Double.parseDouble(s);
}
else if (t == VTDNav.TOKEN_PI_NAME)
{
if (a + 1 < vn.vtdSize || vn.getTokenType(a + 1) == VTDNav.TOKEN_PI_VAL)
//s = vn.toString(a+1);
d = vn.parseDouble(a + 1);
else
d = Double.NaN;
}
else
d = vn.parseDouble(a);
}
}
catch (Exception e)
{
}
vn.contextStack2.size = size;
reset(vn);
vn.pop2();
//return s;
return d;
}
示例2: compareVNumber2
private bool compareVNumber2(int k, VTDNav vn, double d, int op)
{
double d1;
int t = vn.getTokenType(k);
if (t == VTDNav.TOKEN_STARTING_TAG || t == VTDNav.TOKEN_DOCUMENT)
{
d1 = vn.XPathStringVal2Double(k);
}
else
{
k = getStringVal(vn, k);
d1 = vn.parseDouble(k);
}
switch (op)
{
case EQ:
return d1 == d;
case NE:
return d1 != d;
case GE:
return d1 >= d;
case LE:
return d1 <= d;
case GT:
return d1 > d;
default:
return d1 < d;
}
}