String 飞镖/颤振;子字符串0到30,但仅当超过30个字符时

String 飞镖/颤振;子字符串0到30,但仅当超过30个字符时,string,flutter,substring,String,Flutter,Substring,我有一个小问题,我想将一个字符串的子字符串设置为最多30个字符,但是当我执行字符串时。子字符串(0,30),如果字符串超过30个字符,则可以正常工作,但如果不是,则会出现错误 有人知道如何解决这个问题吗?您应该得到“RangeError:值不在范围内:30”错误 在此之前,尝试添加长度控制 if (string.length < 30) return string; else return string.substring(0, 30); if(string.length

我有一个小问题,我想将一个字符串的子字符串设置为最多30个字符,但是当我执行
字符串时。子字符串(0,30)
,如果字符串超过30个字符,则可以正常工作,但如果不是,则会出现错误

有人知道如何解决这个问题吗?

您应该得到“RangeError:值不在范围内:30”错误

在此之前,尝试添加长度控制

if (string.length < 30)

  return string;

else

  return string.substring(0, 30);
if(string.length<30)
返回字符串;
其他的
返回字符串。子字符串(0,30);
让我们缩短上面的代码:

String resultText = (string.length < 30) ? string : string.substring(0, 30);
String resultText=(String.length<30)?string:string.substring(0,30);
您应该得到“RangeError:值不在范围内:30”错误

在此之前,尝试添加长度控制

if (string.length < 30)

  return string;

else

  return string.substring(0, 30);
if(string.length<30)
返回字符串;
其他的
返回字符串。子字符串(0,30);
让我们缩短上面的代码:

String resultText = (string.length < 30) ? string : string.substring(0, 30);
String resultText=(String.length<30)?string:string.substring(0,30);
试试这个

return string.substring(0, string.length < 30 ? 30 : string.length);
返回string.substring(0,string.length<30?30:string.length);
试试这个

return string.substring(0, string.length < 30 ? 30 : string.length);
返回string.substring(0,string.length<30?30:string.length);

您的错误是什么?您能给我看一下当前代码吗?您的错误是什么?您能给我看一下当前代码吗?