asp.net - 索引和长度必须引用字符串中的位置。参数名称: length

标签 asp.net

我收到此错误:

Index and length must refer to a location within the string.
Parameter name: length

使用此代码:
string a1 = ddlweek.Text.Substring(0, 8);                
string a3 = ddlweek.Text.Substring(10, 14);

这是什么意思?

最佳答案

如果字符串的长度(ddlweek)为23个字符或更少,则会出现此错误:

    string ddlweek = "12345678901234567890123";//This is NOK
    string a1 = ddlweek.Substring(0, 8);                
    string a3 = ddlweek.Substring(10, 14);
    Console.WriteLine("a1="+a1);
    Console.WriteLine("a3="+a3);
    Console.ReadLine();

字符串长度至少应为24个字符。
您可以考虑添加if以确保一切正常。
    string ddlweek = "123456789012345678901234";//This is OK
    string a1 = ddlweek.Substring(0, 8);                
    string a3 = ddlweek.Substring(10, 14);
    Console.WriteLine("a1="+a1);
    Console.WriteLine("a3="+a3);
    Console.ReadLine();

关于asp.net - 索引和长度必须引用字符串中的位置。参数名称: length,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10614870/

相关文章:

c# - SqlConnection 类中的默认网络协议(protocol)是什么

asp.net - 如何使用 ASP.NET 制作一个非常简单的 Web 代理?

ASP.NET Web API 2 Bearer Token 重定向到登录页面而不是返回 401

asp.net - 在 DropDownList 中触发事件

javascript - 如何使用 Javascript 设置用于打印的 Html 页面宽度和高度

asp.net - 在 asp.net 中包含网格时未设置最大高度

c# - 从特定时间格式计算总秒数

asp.net - Orchard 和主要细节编辑

asp.net - asp.net如何改变列表框选中的颜色

javascript - 使用内容安全策略阻止 Internet Explorer 11 上的内联 JavaScript