1 //方法一 利用DataTable中的Compute方法 例如:1*2-(4/1)+2*4=6
 2 string formulate = string.Format("{0}*{1} - {2}/{3} +{1}*{2}", 1, 2, 4, 1);
 3 DataTable dt = new DataTable();
 4 Response.Write(dt.Compute(formulate, "").ToString());
 5
 6 Response.Write("<br/>");
 7
 8 //方法二  利用JS中强大的Eval函数 可以带if-else判断 添加COM引用:Microsoft Sctipt Control 1.0
 9 MSScriptControl.ScriptControl sc = new MSScriptControl.ScriptControlClass();
10 sc.Language = "JavaScript";
11 string formulate1 = string.Format("if({0}==2)((({0}*{1})-{3}+({1}*{2}))+{4}/{0});else(1+2*3)", 2, 3, 4, 5,6);
12 object objResult = sc.Eval(formulate1);
13 if (objResult != null)
14 {
15     Response.Write(objResult.ToString());//1+12+3
16 }  

/* 方法三 需将Microsoft.JScript 和Microsoft.Vsa加入参考并引用Microsoft.JScript */
public object EvalExpress(string sExpression)  {  Microsoft.JScript.Vsa.VsaEngine ve = Microsoft.JScript.Vsa.VsaEngine.CreateEngine();  return Microsoft.JScript.Eval.JScriptEvaluate(sExpression, ve);  

原文链接 http://blog.csdn.net/smartsmile2012/article/details/8214989

转载于:https://www.cnblogs.com/xiaojt/p/4302800.html

C#中另类自定义公式计算 字符串转换为计算公式,并得出计算结果【转载】相关推荐

  1. “银行家算法”讲解,在前端表格中利用自定义公式实现“四舍六入五成双”

    银行的盈利模式是什么?三个字:信息差!从储户手中收拢资金,然后放贷出去,而所谓的"利润"就是这其中的利息差额. 在我国,人民银行规定每个季度月末的20号为银行结息日,每一年四次结息 ...

  2. VC++任意格式时间字符串转换为CTime类型以及计算时差

    在MFC中使用CTime类获取到时间字符串比较方便.简洁.如果使用不规则时间字符串转换为CTime及相关的类型却不太常见,为此我根据需要动手封装了三个函数(函数一:不规则时间字符串转换为CTime类型 ...

  3. 1、 利用AUTO CAD脚本写一个插件,可以读取CAD中的图形公式,并输出为一个Excel计算表格...

    对于如何使用AutoCAD脚本编写插件,下面是一些步骤指导: 了解AutoCAD脚本语言,如LISP或AutoLISP,并学会使用它们. 制定插件的功能需求,明确它需要读取的CAD图形公式和输出的Ex ...

  4. uniapp中后端返回的数字字符串如何在页面快速计算

    今天在对接接口的时候,后端返回的数据有单价有数量,但是在页面相乘是出现了NaN, 数据类型对不上. 两个字符串类型的数字在页面中如何快速计算 两个方法 parseInt() parseFloat() ...

  5. 自定义计算器 android,自定义公式计算app下载

    自定义公式计算器是非常强大的一款计算器软件,可以帮助大家计算各种函数,还能够自定义公式进行保存,便于以后的计算:软件包含了科学计算器的所有功能,而且没有广告,非常的方便和强大,喜欢的朋友可以到当易网下 ...

  6. php 字符串里面计算,php 计算字符串长度

    在项目的开发中,常常遇到要计算一个字符串的长度(中英文结合),由于产品要求不同,每个中文的长度要求也不一样. 解决utf-8编码下的字符串长度(可自定义每个中英文算几个字节) /** * 计算字符串长 ...

  7. long到number转换 ts_js如何将纯数字字符串转换为long型

    1.js如何将纯数字字符串转换为long型? js 中 int的存储位数?最大十进制数表示是多少? 整数(不使用小数点或指数计数法)最多为 15 位. 小数的最大位数是 17,但是浮点运算并不总是 1 ...

  8. 将字符串转换为日期时间

    我有大量的日期时间列表,例如字符串: Jun 1 2005 1:33PM Aug 28 1999 12:00AM 我将把它们推回到数据库中正确的日期时间字段中,因此我需要将它们魔术化为实际的日期时间对 ...

  9. Swift3.0语言教程字符串转换为数字值

    Swift3.0语言教程字符串转换为数字值 Swift3.0语言教程字符串转换为数字值,在NSString中,开发者可以将字符串转换为数字值,通过这些数字值可以实现一些功能,如加法运算.减法运算等.数 ...

  10. Python将字符串转换为列表

    We can convert a string to list in Python using split() function. 我们可以使用split()函数将字符串转换为Python中的列表. ...

最新文章

  1. 在Ubuntu 14.04 64bit上升级安装ATS 5.3.2/6.1.1实录
  2. VBScript 之文件 IO 篇
  3. 051_Array对象
  4. Converting slapd.conf to a Directory Based Configu
  5. spring—配置数据源
  6. 天翼云盘php插件,Linux下使用天翼云盘终极方案
  7. leetcode刷题笔记(3)(python)
  8. Rust或C#,Python 等如何封装C++的接口 (比如CTP)?
  9. 【信号检测】认知无线电的信号检测算法matlab仿真:能量检测,循环平稳检测,匹配滤波检测
  10. python微博数据分析_用python处理微博JSON数据范例
  11. 闲暇时间做的一个亲属关系计算器
  12. 科幻-奇幻小说TOP100
  13. 最简单的51单片机软件定时器的编写
  14. 在电脑上使用考研APP的方法(亲测有效)
  15. python实现自动拨打电话_twilio python自动拨打电话,播放自定义mp3音频的方法
  16. linux入门怎么学
  17. 大话卫星导航中的信号处理系列文章——GPS信号L1频点的中频数据生成与验证
  18. name norm is not defined
  19. 用于私网的IP地址段
  20. C#:图片无损压缩文件大小

热门文章

  1. Java锁--CyclicBarrier
  2. vmware虚拟机安装jdk
  3. css3 水纹效果(仿写阿里云)
  4. 比想象中更旗舰,金立M2017国内首秀堪称完美!
  5. nagios介绍及Server安装(三)
  6. 奇妙生活-神奇的数字-1的故事
  7. 2011年工作安排_计算机技术与软件专业技术资格考试
  8. 理解Active Directory中用户登录的具体行为
  9. 关于NTFS文件夹的安全权限分配的一些总结
  10. shell编程四剑客之 find