在我的程序中,我有一个通过另一个程序发送的长字符串。这个字符串大约有 100 个字符长,我只需要其中的一小部分。为此,我们假设我发送的字符串如下:
Hello, I am a test string. I am awfully long and full of things you don't want.
因此,要剪切字符串以便我只得到我需要的部分,我使用了以下字符串方法:
String.Substring(startPoint, Endpoint)
现在在我的程序中我知道我需要使用的字符串的位从一开始就是 38 个字符并且只有 36 个字符长。因此我的电话看起来像这样:
String.Substring(38, 36)
而且我的程序会愉快地从上面的例子中读取test string
。
当我构建程序时,这没有显示任何问题或错误。但是当我运行它的时候,电脑报错说终点不能低于起点。然而,问题是我想要的消息部分被发送了过来。
我已经尝试修改我的调用,使其看起来类似于:
String.Substring(startPoint, startPoint + 36)
但这返回了一堆我不需要或不想要的额外字符。
现在我对这个方法的想法是,它的工作原理是采用我的初始点,即字符串开头的第 38 个字符,然后从第 38 个开始的 36 个字符。我对这种方法的工作原理的想法是错误的吗?
为什么这台计算机会提示一个问题,但无论如何都会执行我想要的操作?
最佳答案
你一直在说“端点”,但它是字符串长度。你的工作方式是正确的。我不确定你为什么会收到警告。这是有关该方法的信息。
http://msdn.microsoft.com/en-us/library/system.string.substring.aspx
警告是否来自插件?
关于c# - String.Substring解释,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19859389/