Дополнительно
Как добавить строку в массив string[]? Нет функции .Add
private string[] ColeccionDeCortes(string Path)
{
DirectoryInfo X = new DirectoryInfo(Path);
FileInfo[] listaDeArchivos = X.GetFiles();
string[] Coleccion;
foreach (FileInfo FI in listaDeArchivos)
{
//Add the FI.Name to the Coleccion[] array,
}
return Coleccion;
}
Я'хочу преобразовать FI.Name
в строку и затем добавить ее в мой массив. Как я могу это сделать?
203
13
Вы не можете добавлять элементы в массив, так как он имеет фиксированную длину. Вам нужен
List
, который впоследствии может быть превращен в массив с помощьюlist.ToArray()
.Кроме того, вы можете изменять размер массива.
Использовать List из System.Collections.Generic
Или сокращенно (с использованием инициализатора коллекции):
Если вам действительно нужен массив в конце, используйте
Возможно, лучше абстрагироваться от интерфейса, например IEnumerable, а затем просто возвращать коллекцию.
Edit: Если вы должны использовать массив, вы можете предварительно распределить его до нужного размера (т.е. до количества FileInfo, которые у вас есть). Затем, в цикле foreach, поддерживайте счетчик для индекса массива, который нужно обновить в следующий раз.
Изи
Если я'м не ошибаюсь это:
Это, как я добавить строку при необходимости:
Почему Дон'т вы использовать цикл for вместо foreach для. В этом случае, нет никакого способа, вы можете получить индекс текущей итерации цикла foreach.
Имя файла может быть добавлен в строку[] таким образом,
Этот код прекрасно работает для подготовки массива динамических значений для Spinner в Андроид:
Добавление ссылки с использованием системы по LINQ
.Средства LINQ; и использовать предоставленные метод расширения
добавить:
публичный статический тип IEnumerable<метод> добавить<метод>(этот интерфейс IEnumerable<метод> источник, метод элементу) Затем вы должны преобразовать его обратно в строку[]помощью
.Метод метод toArray ()`.Возможно, потому, что тип
строка[]
реализуетинтерфейс IEnumerable
, он также реализует следующие интерфейсы:интерфейс IEnumerable<чар>
,интерфейс IEnumerable
,интерфейс icomparable
,интерфейс icomparable И Л;строка>
,интерфейса iconvertible
,интерфейс IEquatable на<строка> У
,ICloneable
чтобы очистить массив и количество его's элементов = 0 в то же время, использовать это..
Я бы не использовать массив в этом случае. Вместо этого я хотел бы использовать stringcollection доступным.