关于c#中StartIndex不能小于0的问题,

来源:学生作业帮助网 编辑:作业帮 时间:2024/11/09 03:35:31

关于c#中StartIndex不能小于0的问题,
关于c#中StartIndex不能小于0的问题,

关于c#中StartIndex不能小于0的问题,
由你的代码可以看出肯定是截取出错,帮你修改了一下代码:
string tmp = ;
if(FileType.Length 1)
tmp = FileType.Substring(1,FileType.Length-1);
int start = FCKeditor1.Value.IndexOf(UploadPath);
if(start < 0)start = 0;int end = FCKeditor1.Value.IndexOf(tmp) - FCKeditor1.Value.IndexOf(UploadPath);
if(end < 0) end = 0;
imgURL= / + FCKeditor1.Value.Substring(start,end) + tmp;
另外,这个代码是你写的吗?太长导致可读性太差,建议一行代码不超过80字符
汗一个先,这个错误就是在一些截取字符串的地方报错,至于具体是哪里出错,没有看到你的代码,不可能指出来的,另外,告诉你这么多,你也应该能自己解决了才对.
你的代码没有给全,应该是你在取扩展名时出的问题,
你取扩展名应该是类似下面的代码:
string FileType = fileName.Substring(fileName.IndexOf(.));
此时如果上传一个没有扩展名的文件,那么fileName.IndexOf(.)就等于-1,而fileName.Substring(-1)当然就会报错:StartIndex 不能小于 0.
解决方法就是先判断一下有没有扩展名.