码迷,mamicode.com
首页 > Windows程序 > 详细

C#计算表达式(仿计算器功能)

时间:2017-03-06 13:26:37      阅读:212      评论:0      收藏:0      [点我收藏+]

标签:name   public   exp   执行   soft   sharp   returns   new   object   

一、用MSScriptControl在C#中执行JavaScript代码javascript中有个eval方法用过的人都知道他的方便和强大之处。
在C#中,我们也可以通过Com组件来执行一段javascript代码。
下面的代码展示了如何用MSScriptControl 组件执行一段数学表达式:

MSScriptControl.ScriptControlClass sc = new MSScriptControl.ScriptControlClass();
sc.Language = "javascript";
object obj = sc.Eval("500-(110-100)/2*6");
Console.WriteLine(obj);

要使用MSScriptControl需要引用com组件 Microsoft Script Control 1.0。

二、引用Microsoft.JScript与Microsoft.Vsa两个命名空间,并调用JScriptEvaluate方法实现
注:需加入Microsoft.JScript与Microsoft.Vsa两个命名空间。(已过时)

///<summary> 
///四则混合运算 
///</summary> 
///<param name= "sExpression">计算表达式</param> 
///<returns>计算结果</returns> 
///<example> 
///<code> 
///object x = Mathx.Eval("500-(110-100)/2*6"); 
///</code> 
///</example> 
public static object Eval(string sExpression) 
{ 
	 Microsoft.JScript.Vsa.VsaEngine ve = Microsoft.JScript.Vsa.VsaEngine.CreateEngine();
	 return Microsoft.JScript.Eval.JScriptEvaluate(sExpression, ve);
}

 

C#计算表达式(仿计算器功能)

标签:name   public   exp   执行   soft   sharp   returns   new   object   

原文地址:http://www.cnblogs.com/lyyjun1203/p/6509148.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!