以前看到过一个函数 记不得叫什么的
大概用法是 
string ex="1+2+3*5";
然后调用int value= thefunc(ex)
value就得到18了 这个thefunc是什么来着?

解决方案 »

  1.   

    using System;
    using System.Collections.Generic;
    using System.Text;namespace ConsoleApplication19
    {
        class Program
        {
            public static string Compute(string str)
            {
                return new System.Data.DataTable().Compute(str, "").ToString();
            }        static void Main(string[] args)
            {
                Console.WriteLine(Compute("1+2+3*5"));
                Console.Read();
            }
        }
    }
      

  2.   

    还有//先在项目中添加COM引用Microsoft Script Control 1.0
    using MSScriptControl;ScriptControl vScriptControl = new ScriptControl();
    vScriptControl.Language = "JavaScript";
    Text = vScriptControl.Eval("(1.5+2.5)*2/4").ToString();但是不如2楼的好用
      

  3.   

    对对 是compute 终于找到了。。多谢
      

  4.   

    c#没有直接调用的方法的,可以使用脚本对象也可以用datatable计算,因为脚本对象需要引用com组件,所以推荐datatable计算