C# 在[]中为值分配数字时,无法将类型字符串[]转换为字符串

C# 在[]中为值分配数字时,无法将类型字符串[]转换为字符串,c#,arrays,string,C#,Arrays,String,当值是字符串数组中的字符串时,为什么它会抱怨无法将字符串数组转换为字符串 代码: 编辑:将该行更改为文件名[i]=FileName 现在它说“使用未分配的局部变量‘Filenames’和i 它们在函数顶部定义。您的名字上还有一个额外的“s”: //Right Here Filenames[i] = Filenames; 应该是: //Right Here Filenames[i] = FileName; 不过,除此之外,您的Filenames[]数组当前为null。一旦您解决了第一个问题,您

当值是字符串数组中的字符串时,为什么它会抱怨无法将字符串数组转换为字符串

代码:

编辑:将该行更改为文件名[i]=FileName

现在它说“使用未分配的局部变量‘Filenames’和i

它们在函数顶部定义。

您的名字上还有一个额外的“s”:

//Right Here
Filenames[i] = Filenames;
应该是:

//Right Here
Filenames[i] = FileName;
不过,除此之外,您的Filenames[]数组当前为
null
。一旦您解决了第一个问题,您将不得不解决这个问题。我的建议是完全跳过使用该数组,直接转到AudioFiles\u列表框。一旦这样做,您就可以直接使用列表框的AddRange方法:

AudioFiles_listbox.Items.AddRange(UnConvertedFilesList.FileNames);
您的姓名上还有一个额外的“s”:

//Right Here
Filenames[i] = Filenames;
应该是:

//Right Here
Filenames[i] = FileName;
不过,除此之外,您的Filenames[]数组当前为
null
。一旦您解决了第一个问题,您将不得不解决这个问题。我的建议是完全跳过使用该数组,直接转到AudioFiles\u列表框。一旦这样做,您就可以直接使用列表框的AddRange方法:

AudioFiles_listbox.Items.AddRange(UnConvertedFilesList.FileNames);
“使用未分配”意味着您在该方法或代码段中的任何地方都没有使用它……您的分配现在可以了,但它没有被使用

HTH.

“使用未分配”意味着您在该方法或代码段中的任何地方都没有使用它……您的分配现在是正常的,但它没有被使用


HTH.

实际上是文件名-注意大写字母N。但他应该知道。而且我从来没有初始化过。他需要int i=0。干杯+1@JoelCoehoom,请提供解决方案代码,用于执行您描述的替代方法;我得到一个错误:“变量的文件名已声明,但从未使用过。”“那么,如果我放弃这条线,它还能工作吗?我有一个问题,窗口加载两次,并且不允许我选择多个文件。实际上是文件名-注意大写字母N。但他应该知道这一点。而且我从来没有被初始化过。他需要int i=0。干杯+1@JoelCoehoom,请提供解决方案代码,以执行您描述的替代方法。是的,对于“string[]filename;”我得到错误:“变量'filename已声明,但从未使用过”,因此如果我不使用该行,它仍然可以工作吗?我有一个问题,窗口加载两次,不允许我选择多个文件。