算术计算式的计算。 以前用VB时有这样一个组件。C#不知道有没有现成的。要不自已写一个吧!不太难。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 方法一:堆栈操作方法二:数据库操作方法三:按照编译原理,对语句进行分析 以前好像有过不少这类问题的帖子,不过.NET里我不知道有没有,但是其他开发语言里有,原理差不多。 exp -> exp op exp | (exp) | numberop -> +|-|*|/根据以上语法规则,对表达式作一AST (抽象语法树)有了AST 作一次preorder 遍历就可求得表达式得值 或者用SQL查询select (1+2+3+4+5+6+7+8) as x;读x就可以了 private Excel._ExcelApplicationClass excelResult;excelResult = new Excel._ExcelApplicationClass();excelResult.Evaluate(getValue)需要引用excel.dll,excelOffice 2000里就有,在 vs.net 命令行执行如下操作,就可得到你要的三个文件:Tlbimp EXCEL9.OLB 即可得到excel.dll to lexchou又是你!,你真得认为你的idea 很妙吗?我看你一传播了N次了,要是没有数据库怎么办?再说,就是有数据库,数据库本身还是得作语法分析,表达式求值,还加上网络开销,中间层调用开销,你以为性能会很好吗? 我没说我的idea很妙啊,我只是把我知道的能解决这个问题的最容易的方法说出来而已。再说我刚刚从Delphi转到.net来,这个ID也是刚刚注册的,就今天发贴稍微多一点,何来“传播了N次”,这种方法只不过是我在.net板第一次说。再说现在能运行.net的哪台机器没装ADO?随便带一个空数据库,要个什么网络开销?中间层开销又多大?语法分析已经包含在表达式求值内,哪种解决这类问题的方法不需要进行语法分析?也许安全方面有问题,但楼主题这个问题不像是做对安全要求很高的东西,怕个bird。我自己做的一个开源项目(也是我转.net后第一个作品)基本上快做完了,就自带一个表达式计算的库(自己写的,支持自定义函数,自定义变量,常量,宏,复数,向量,三角函数、双曲函数,IO操作),这几天把一个设计上的问题解决了就可以发布了,文档都写完了。我没猜错的话,你是bsbs吧 簡單的一個語句,用javascript:<P><INPUT id="t1" type="text"><INPUT type="button" value="Button" onclick="javascript:t2.value=eval(t1.value);"><INPUT id="t2" type="text"></P> 使用javascript下的eval方法也行,也可以采用逆波兰式实现,一般的科学计算器实现的差不多。 zhzuo(秋枫)使用javascript下的eval方法也行,也可以采用逆波兰式实现,一般的科学计算器实现的差不多。可以帮说一下“逆波兰式”吗? select语句 也不失为一种好办法。 怎么Textbox里显示不了系统时间 读取文本文件问题 求助:代码实现点击webbrowser上的超链 挑战:将数组中空值删去并改变数组长度的最快算法! sqlce数据库中如何判断一个表是否存在? 菜鸟求助:C#读取随机存储文件? 如何得到在整个窗体内的MouseMove事件? 做过语音视频聊天的进来谈谈 sql server 2008使用问题 用C#如何做一个定时删除文件程序 配电脑估价,两天结帖 100分,再加100分,还是没有进展MSN协议开发问题(请分析如下通信内容)
方法二:数据库操作
方法三:按照编译原理,对语句进行分析
以前好像有过不少这类问题的帖子,不过.NET里我不知道有没有,但是其他开发语言里有,原理差不多。
op -> +|-|*|/根据以上语法规则,对表达式作一AST (抽象语法树)
有了AST 作一次preorder 遍历就可求得表达式得值
select (1+2+3+4+5+6+7+8) as x;
读x就可以了
excelResult = new Excel._ExcelApplicationClass();excelResult.Evaluate(getValue)需要引用excel.dll,excelOffice 2000里就有,在 vs.net 命令行执行如下操作,就可得到你要的三个文件:
Tlbimp EXCEL9.OLB 即可得到excel.dll
又是你!,你真得认为你的idea 很妙吗?我看你一传播了N次了,要是没有数据库怎么办?
再说,就是有数据库,数据库本身还是得作语法分析,表达式求值,还加上网络开销,
中间层调用开销,你以为性能会很好吗?
我自己做的一个开源项目(也是我转.net后第一个作品)基本上快做完了,就自带一个表达式计算的库(自己写的,支持自定义函数,自定义变量,常量,宏,复数,向量,三角函数、双曲函数,IO操作),这几天把一个设计上的问题解决了就可以发布了,文档都写完了。我没猜错的话,你是bsbs吧
<P><INPUT id="t1" type="text"><INPUT type="button" value="Button" onclick="javascript:t2.value=eval(t1.value);"><INPUT id="t2" type="text"></P>
也可以采用逆波兰式实现,一般的科学计算器实现的差不多。
使用javascript下的eval方法也行,
也可以采用逆波兰式实现,一般的科学计算器实现的差不多。可以帮说一下“逆波兰式”吗?