如何在C#中删除String的最后一个char?

时间:2013-10-07 18:14:09

标签: c# string trim

我有一个数字字符串,可能是"124322""1231.232""132123.00"。 我想删除我的字符串的最后一个字符(无论它是什么)。 所以我希望我的字符串"99234"成为"9923"

字符串的长度是可变的。它不是常数所以我不能使用string.Remove或trim或类似它们(我想)。

我如何实现这一目标?

5 个答案:

答案 0 :(得分:70)

YourString = YourString.Remove(YourString.Length - 1);

答案 1 :(得分:10)

var input = "12342";
var output = input.Substring(0, input.Length - 1); 

var output = input.Remove(input.Length - 1);

答案 2 :(得分:3)

newString = yourString.Substring(0, yourString.length -1);

答案 3 :(得分:0)

如果您使用的是string数据类型,则代码可以正常工作:

string str = str.Remove(str.Length - 1);

但是当你有 StringBuilder 时,你还必须指定第二个参数length

SB

即,

string newStr = sb.Remove(sb.Length - 1, 1).ToString();
  

为避免以下错误:

SB2

答案 4 :(得分:0)

如果您需要在应用程序中做很多事情,或者需要链接不同的调用,则可以创建扩展方法:

public static String TrimEnd(this String str, int count)
{
    return str.Substring(0, str.Length - count);
}

并调用它:

string oldString = "...Hello!";
string newString = oldString.Trim(1); //returns "...Hello"

或链接:

string newString = oldString.Substring(3).Trim(1);  //returns "Hello"