小编Wil*_*ams的帖子

string.substring vs string.take

如果您只想获取字符串的一部分,则主要使用子字符串方法.这有一个缺点,你必须首先测试字符串的长度,以避免错误.例如,您希望将数据保存到数据库中,并希望将值剪切为前20个字符.

如果你执行temp.substring(0,20)但temp只保存10个字符,则抛出异常.

我看到有两种解决方案:

  1. 测试长度,并在需要时执行子串
  2. 使用扩展方法Take

        string temp = "1234567890";
        var data= new string( temp.Take(20).ToArray());
        --> data now holds "1234657890"
    
    Run Code Online (Sandbox Code Playgroud)

当使用Take方法时,在速度或内存使用方面是否有任何缺点.好处是您不必编写所有if语句.

c# substring

23
推荐指数
3
解决办法
2万
查看次数

标签 统计

c# ×1

substring ×1