C# 索引超出了数组界限 论坛找过了 没有找到答案 求解决!

if (folderBrowserDialog1.ShowDialog() == DialogResult.OK)
{
int i = 0;
string Path = folderBrowserDialog1.SelectedPath;
string[] filepath = System.IO.Directory.GetFiles(Path);
string[] filename = new string[1000];
for (i = 0; i < filepath.Length; i++)
{
filename[i] = System.IO.Path.GetFileNameWithoutExtension(filepath[i]);
}

            textBox1.Text = "";
            foreach (string j in filename)
            {
                textBox1.Text += j+ "\r\n"; ;

            }   
        }
说是这句出了问题
    filename[i] = System.IO.Path.GetFileNameWithoutExtension(filepath[i]);

“System.IndexOutOfRangeException”类型的未经处理的异常在 WindowsFormsApplication2.exe 中发生 错误代码

filename分配了1000个,但是你过去的文件个数可能超过了1000,所以下面的循环就可能越界了

filename[i] = System.IO.Path.GetFileNameWithoutExtension(filepath[i]);
数组越界