C# 程序运行后说length值小于0,后面是代码求大神帮忙修改下,顺便给我说一下具体的问题在哪?
OpenFileDialogopenDlg=newOpenFileDialog();openDlg.Title="请选择要合并的第一个文件";if(openDlg.Sho...
OpenFileDialog openDlg = new OpenFileDialog();
openDlg.Title = "请选择要合并的第一个文件";
if (openDlg.ShowDialog() == DialogResult.OK && openDlg.FileName != "")
{
txtMerSrc.Text = openDlg.FileName;
}
srcPath = openDlg.FileName.Split(@"\".ToCharArray());
for (i = 0; i < srcPath.Length - 1; i++)
{
strTemp = strTemp + srcPath[i] + @"\";
}
srcMerFilename = strTemp;
filename = srcPath[srcPath.Length - 1].Split(@".".ToCharArray());
for(i=0;i<filename.Length-1;i++)
{
fileName=fileName+filename[i]+@".";
}
fileName = fileName.Substring(0,fileName.Length - 1);
fileExtra=filename[filename.Length-1];
}
代码 很多我也不知道是哪错误了,所以只发了一部分 展开
openDlg.Title = "请选择要合并的第一个文件";
if (openDlg.ShowDialog() == DialogResult.OK && openDlg.FileName != "")
{
txtMerSrc.Text = openDlg.FileName;
}
srcPath = openDlg.FileName.Split(@"\".ToCharArray());
for (i = 0; i < srcPath.Length - 1; i++)
{
strTemp = strTemp + srcPath[i] + @"\";
}
srcMerFilename = strTemp;
filename = srcPath[srcPath.Length - 1].Split(@".".ToCharArray());
for(i=0;i<filename.Length-1;i++)
{
fileName=fileName+filename[i]+@".";
}
fileName = fileName.Substring(0,fileName.Length - 1);
fileExtra=filename[filename.Length-1];
}
代码 很多我也不知道是哪错误了,所以只发了一部分 展开
展开全部
我看你这里的代码就是要获取fileName和fileExtra,名字和后缀
我不建议你这样Split,会有很多隐患,包括空元素。
而是应该用
Path.GetFileNameWithoutExtension(openDlg.FileName); //获取文件名,不带路径和后缀
Path.GetExtension(openDlg.FileName); //获取后缀
更多追问追答
追问
这个嘛 我也不怎么了解,新手刚入门,然后根据老师说的,编辑文件切割器的代码都是书上有的代码,只是有一些不连贯的地方需要自己去修改。最后程序编译没问题,在点击开始切割后 提示length值 小于0,这个我就不知道怎么去修改了
抱歉啊 昨天有事出去了。今天一早上有课.....
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询