我有一个 XML 文件,这是一个片段:
<response>
<data offset="4" length="2" pattern="[%lx]" desc="Hours"/>
<data offset="2" length="2" pattern="[%lx]" desc="Minutes"/>
<data offset="0" length="2" pattern="[%lx]" desc="Seconds"/>
<data offset="6" length="2" pattern="[%lx]" desc="Day"/>
<data offset="8" length="2" pattern="[%lx]" desc="Month"/>
<data offset="10" length="2" pattern="[%lx]" desc="Year" modifier="+2020"/>
</response>
这用于解码代码中的响应,即时间和日期,年份在响应中返回为 04,我想将修饰符应用于该值,我试图使其尽可能灵活和通用.
如何将代码中的修饰符的值作为字符串并将其应用于该值?我的代码:
double dblData = 0.0;
if (double.TryParse(strData, out dblData) == true) {
...
}
strData
是一个字符串,在本例中包含 04
,如何将另一个名为 strModifier
的变量中的修饰符应用到 strData
,使其变为 04+2020
,结果为 2024
?
我可以用 Lambda 做到这一点吗?
using Microsoft.CodeAnalysis.CSharp.Scripting;
class Program
{
static async Task Main(string[] args)
{
string strData = "04";
string strModifier = "+2020";
int result = (int) await CSharpScript.EvaluateAsync(strData + strModifier);
}
}