2017-04-26 139 views
1

我有文字在Excel中是这样的:如何修剪空间

  120 
124569  abasd   12345 

同时有向左侧和右侧sapces。

我从Excel复制并粘贴为文本。当我点击按钮时,它会显示像这样。

代码:

abArray= abArray & "," & gridview1.Rows(i).Cells(2).Text 

For k = 3 To 17 
    bArray= abArray& "," & Val(gridview1.Rows(i).Cells(k).Text) 
Next 

abArray这说明如下:

0, abasd  ,12345,0,0,0,0,0 

我想无论是从左侧和右侧删除/装饰空间。

我试过abArray.Trim()但这仍然显示空格。

回答

0

如果你想删除所有的空间了最终结果的考虑String.Replace

返回在当前字符串中指定的Unicode字符或字符串的所有实例都替换为一个新的字符串另一个指定的Unicode字符或字符串。

使用例:

Dim s As String = "0, abasd  ,12345,0,0,0,0,0" 
s = s.Replace(" ", "") 

这将输出:

0,abasd,12345,0,0,0,0,0 

它也可以使用StringBuilder所有你的价值观结合在一起,因为这是你的循环时,好的做法是值得是。此时您可以使用String.Trim。这将保留任何在您的价值范围内的空间。换句话说,它只会从值的开头和结尾删除空格。

使用例:

Dim sb As New StringBuilder 
For k = 0 To 17 
    sb.Append(String.Format("{0},", gridview1.Rows(i).Cells(k).Text.Trim())) 
Next 

Dim endResult As String = sb.ToString().TrimEnd(","c) 

endResult将输出:

0,abasd,12345,0,0,0,0,0 

你将不得不为了利用StringBuilder类的进口System.Text

0

使用VB.NET Trim函数删除开头和结尾的空格,更改这一行代码:

abArray= abArray& "," & Val(Trim(gridview1.Rows(i).Cells(k).Text)) 

abArray.Trim()不起作用,因为你没有给Trim函数任何修剪。

+0

这显示错误.. System.ArgumentOutOfRangeException:指定的参数已超出有效值的范围。 ... –

+0

这可能是因为你的循环开始或以k为单元格中的无效索引结束。在代码行'abArray = abArray&“,”&Val(gridview1.Rows(i).Cells(k).Text.Trim)'上放置一个断点,看看有多少个单元格,以及k的值是多少。 –

+0

好的,如果我们删除字符像我有这样的数字.. 101730921  所以有特殊字符,所以我删除这些? –

0

尝试像这样

abArray = abArray & "," & gridview1.Rows(i).Cells(2).Text.Trim 

    For k = 3 To 17 
     abArray= abArray& "," & Val(gridview1.Rows(i).Cells(k).Text.Trim) 
    Next