- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我最近发现了一种使用数据表对象的计算方法在 C# 中计算表达式的方法。这是一段代码:
string expression = "330200000*450000";
var loDataTable = new DataTable();
var loDataColumn = new DataColumn("Eval", typeof(double), expression);
loDataTable.Columns.Add(loDataColumn);
loDataTable.Rows.Add(0);
MessageBox.Show(((double)(loDataTable.Rows[0]["Eval"])).ToString());
如果你输入一个像“300*2”这样的简单表达式,这将起作用,但是返回一个大数字的表达式将不起作用,我得到消息:
"Value is either too large or too small for Type 'Int32'."
我试图强制类型加倍,但出于某种原因,错误仍然指向有关 Int32 类型的内容,我不确定它来自哪里。
对此有一点了解吗?
最佳答案
将“.0”附加到方程中的值:
string expression = "330200000.0*450000.0";
如果像您所说的那样,用户按原样输入方程式(即没有“.0”),那么您可能不得不进行一些模糊不清的字符串操作才能实现此目的。我想到了以下内容,尽管我确信它可以做得更好:
string expression = "330200000*450000"; // or whatever your user has entered
expression = Regex.Replace(
expression,
@"\d+(\.\d+)?",
m => {
var x = m.ToString();
return x.Contains(".") ? x : string.Format("{0}.0", x);
}
);
var loDataTable = new DataTable();
var computedValue = loDataTable.Compute(expression, string.Empty);
正则表达式试图说明您的用户是否已经在他们的等式中的任何数字的末尾加上小数。
关于c# - DataTable 计算值对于 Int32 类型来说太大或太小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29569213/
这是代码: from Tkinter import * def main(): w1 = Tk() w1["height"] = 400; w1["width"] = 500;
我想问一下 scrollView 中 imageView 的布局问题。但是,显示出来的图像非常非常小。即使是 1024 * 1024 px 图片也无法完全占据普通手机的整个屏幕宽度。 如何修改它使得对
我发现我的某个应用程序的启动器图标太小了。该设备是 samsung nexus galaxy,因此它应该使用 mdpi 文件夹中的可绘制对象。 我希望图标大小为 72 x 72 像素。其实这个图标看起
我一直想知道:ptrdiff_t 是否应该能够保存任意两个指针的差异定义?两个指针太远怎么会失败? (我不是指任何特定的语言...我指的是所有具有这种类型的语言。) (例如,当您有 32 位指针时,从
我有一个 QAbstractItemDelegate 并且在 paint 方法中,我试图从标签中绘制文本。但我看到的问题是 QLabel 的大小提示对于它包含的文本来说总是太小。我怎样才能解决这个问题
已关闭。此问题需要 debugging details 。目前不接受答案。 编辑问题以包含 desired behavior, a specific problem or error, and the
我的程序使用 wx.ProgressDialog对多个阶段的流程提供反馈。在每个阶段开始时,我使用 Update 的第二个参数来更改对话框中的消息。 问题在于对话框的宽度是根据构造函数中的消息确定的,
我有一个动态数据数组,其中包含 3 个用于构建饼图的整数。在大多数情况下,IE 运行良好:[5,10,3]。饼图渲染正确,您可以看到所有部分。 但是在某些情况下,数字可能相差很大。即 [1,500,2
我有一个长度为 28 的字符串,它代表基数 16 中的 1 个数字。 long num=strtol(str,NULL,16); 但它适用于小字符串而不是长字符串(它给了我一个否定的结果)。那么对于长
我正在编写一个 PhoneGap 应用程序并使用 Twitter 的 Bootstrap 进行响应式设计。 校园/帐户/部门的框是选择框。我认为很明显的问题是选择框很小,当我在 css 中尝试时无法更
我正在使用这段代码来显示 UIAlert,它将询问简单的输入 UIAlertController *alert = [UIAlertController alertControllerWithTitl
我有一个带复选框的 HTML 公式列表。所有复选框都有一个标签。 我正在使用 flexbox 设计这个公式。使用 flexbox 使其中一个复选框比其他所有复选框都小。原因似乎是该复选框的标签文本太长
我正在这里处理一些 javascript svg 图形,我发现我真的不能依赖 Firefox 上 window.innerHeight(或outerHeight)的值。我正在运行 Ubuntu 12.
单击左侧边栏中的图像 http://vaiman.org/我们的 YouTube 盒子太小了。我需要扩大 YouTube 区域。怎么办? 这是我的 JavaScript 代码 ( http://vai
我有一个视频 View 来流式传输视频,它工作正常但视频的大小太小,我尝试在 API 演示中进行流式传输并且同一视频的大小是正常的。我做错了什么?这是一些代码: main.xml:
我发现 Android Studio (v1.0.1) 布局“设计” View 太小而无用 - 我几乎看不到一些元素。 “缩放”按钮仅显示布局的一小部分。有没有办法分离 View 以便我可以放大它?
嘿,我正在使用 HTML 标签,当我在 Safari 中打开页面时,视频播放器非常小。 如果我启用全屏然后返回,它会正确聚焦。 我不确定是什么原因导致它最初加载不正确。 HTML代码:
我在 UIPopoverController 中显示了一个 UIPickerView。 UIPickerView 的尺寸为:320x216。出于某种原因,UIPickerView 似乎是正常高度的 3
当我给 matplotlib 一个注释字符串时,例如 '$\frac{A}{B} = C$' 我指定字体大小为 18,A 和 B 以 12.6 pt 呈现,而 C 以 18 pt 呈现。我希望 A、B
我有一个条形图,不知何故,整个 svg 容器只是矩形以及落在矩形所在区域的所有内容,因此 y 轴刻度被留在容器之外。我怎样才能解决这个问题,以便顶部的文本和 y 轴刻度(图像)不会留在外面。 我的代码
我是一名优秀的程序员,十分优秀!