C# 使用可变长度子字符串的最佳方法

C# 使用可变长度子字符串的最佳方法,c#,C#,我想将前导空格为25个或更少字符的可变长度字符串作为子字符串。我让它工作,但寻找其他方式 ... item.LineString.Trim().Substring(0, item.LineString.Trim().Length > 25 ? 25 : item.LineString.Trim().Length)); 您可以通过以下方式缩短它: item.LineString.Trim().Substring(0, Math.Min(25, item.LineString.Tri

我想将前导空格为25个或更少字符的可变长度字符串作为子字符串。我让它工作,但寻找其他方式

  ...  item.LineString.Trim().Substring(0, 
item.LineString.Trim().Length > 25 ? 25 : item.LineString.Trim().Length));

您可以通过以下方式缩短它:

item.LineString.Trim().Substring(0, Math.Min(25, item.LineString.Trim().Length));

我会使用
Math.Min

var trimmed = item.LineString.Trim();
var substring = trimmed.Substring(0, Math.Min(25, trimmed.Length));

有趣的是,LINQ的
Take
方法几乎完全实现了您使用
SubString
length逻辑试图实现的功能。虽然我相信它的运行时效率不是最优的,但以下方法也会起作用:

string substring = new string(item.LineString.Trim().ToCharArray().Take(25).ToArray());
我只是想说出来,因为问题是关于“其他方式”,而不一定是“最佳方式”