【问题标题】:Trim empty spaces in int array [closed]修剪int数组中的空格[关闭]
【发布时间】:2015-07-01 04:13:59
【问题描述】:

我需要在这个 int 数组的开头和结尾修剪尾随空格,我该怎么做,我也没有在任何地方获得 Trim() 函数。请建议我。

int[] arrPCT = dtOld.AsEnumerable().Select(r => r.Field<int>("PCT")).ToArray();

【问题讨论】:

  • 请提供一些示例输入和输出数据。这应该更清楚,因为 int 不能被修剪。
  • @John - 让我输入一个值 10,如果我在 10 之后输入空格,我需要修剪它们。
  • 那么为什么你输入的是一个字符串值,你需要在它变成int数组之前对其进行修剪。
  • 我认为 Ashutosh Singh 给出了正确的答案。试试那个
  • 这将自动完成,您不必担心这一点。例如:使用此代码 int a = Convert.ToInt16(" 10 ");这样可以正常工作,无需修剪。

标签: c# asp.net linq


【解决方案1】:

int 是数值。它们不包含空格(或任何其他字符)。试图修剪它们是没有意义的。

【讨论】:

  • 让我输入一个值 10,如果我在 10 之后输入空格,我需要修剪它们。
  • @Learner 你输入了一个值 10 作为字符串还是整数?
  • 不能在文本框中输入int。偶数也只是字符串。
  • @Learner 我们需要更多代码。什么是r?文本框的值如何进入 r? Field 实现是什么样的?
  • 如果您在文本框中键入数字字符,则将其视为字符串。只需修剪字符串即可为您完成工作。然后您可以将修剪后的字符串转换为int。
【解决方案2】:
int[] arrPCT = dtOld.AsEnumerable().Select(r => r.Field<int>("PCT").Trim()).ToArray();

如果 r.Field("PCT") 值是字符串类型。

【讨论】:

  • 我会假设 Field 尝试转换值(r?)并返回一个 int。
  • 如果Field&lt;int&gt; 的实现是这样的:DataRowExtensions.Field<T> Method,那么r.Field&lt;int&gt;("PCT") 将返回一个int,因此永远不会有Trim() 函数
  • 这就是我没有使用 的原因。否则答案是海峡前进。如果您的输入是 int 则无法在其上应用 trim()。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2019-12-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-08-11
  • 1970-01-01
  • 2020-09-09
相关资源
最近更新 更多