Невозможно преобразовать строку типа [] в строку, если значение присвоено номеру в [] - PullRequest
1 голос
/ 19 июля 2010

Почему он жалуется, что не может преобразовать строковый массив в строку, если значения являются строками в строковом массиве

Код:

 int i;
            string[] Filenames;

            OpenFileDialog UnConvertedFilesList = new OpenFileDialog();
            if (UnConvertedFilesList.ShowDialog() == DialogResult.OK)
            {

                foreach (string FileName in UnConvertedFilesList.FileNames)
                {

                    //Right Here
                    Filenames[i] = Filenames;
                    AudioFiles_listbox.Items.Add(FileName);
                    i++;
                }

            }//if
            else
            {
                MessageBox.Show("File does not exist");
            }

edit: эта строка для измененных имен файлов [i] = FileName

Теперь написано «Использование неназначенной локальной переменной« Имена файлов »и то же самое для i

».

Они определены в верхней части функции.

Ответы [ 2 ]

6 голосов
/ 19 июля 2010

У вас есть дополнительные "s" на ваше имя:

//Right Here
Filenames[i] = Filenames;

должно быть:

//Right Here
Filenames[i] = FileName;

Более того, ваш массив Filenames [] в настоящее время null. Как только вы исправите свою первую проблему, вам придется с этим бороться. Моя рекомендация - полностью отказаться от использования массива и просто перейти непосредственно к блоку AudioFiles_list. И как только вы это сделаете, вы можете перейти прямо к методу AddRange Listbox:

AudioFiles_listbox.Items.AddRange(UnConvertedFilesList.FileNames);
0 голосов
/ 19 июля 2010

«Использование неназначенного» означает, что вы не используете его нигде в этом методе или сегменте кода ... ваше назначение теперь в порядке, но оно не используется.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...