Как я могу добавить слова из текстового файла в список массивов на C#

#c# #visual-studio

Вопрос:

У меня есть список слов, как показано ниже. Я хочу добавить эти слова в список arraylist строка за строкой. Я попробовал это, но ничего не вышло.

 acaba
altı
altmış
ama
ancak
arada
artık
asla
aslında
 

Мой код приведен ниже;

 String path = @"C:Users.......xxx.txt";
String readpath = File.ReadAllText(path);

ArrayList wordList = new ArrayList();

wordList.Add(readpath);
 

Комментарии:

1. Может быть, вы хотите File.ReadAllLines() и просто используете массив, который он возвращает. Зачем вам нужен ArrayList?

2. После того, как я добавлю эти слова, я собираюсь удалить соответствующие слова из другого текстового файла. Так что я думаю, что это должен быть ArrayList, я прав?

3. Нет, а что? Вы можете использовать string[] массивы. См Except() ., например, метод LINQ. ArrayList-это очень старый тип коллекции, вы используете универсальный IEnumerable<T> / List<T> большую часть времени. Вам просто нужен массив здесь.

4. Хорошо, я понимаю, что вы предлагаете. Я использовал массив string[] и просто добавил toArray() в конце, например; String[] путь для чтения = Файл. ReadAllText(путь). toArray(); и это сработало, спасибо 🙂

5. String[] readpath = File.ReadAllLines(path);

Ответ №1:

Я предлагаю использовать File.ReadAllLines() which, который возвращает массив строк, а затем передает его в ArrayList конструктор

 String path = @"C:Users.......xxx.txt";
String[] lines = File.ReadAllLines(path);

ArrayList list = new ArrayList(lines);
 

Комментарии:

1. На самом деле это не улучшение. Во всяком случае, это ухудшает код, потому что вы переходите от массива, безопасного для типов, к списку ArrayList, небезопасному для типов.

2. Я ответил на вопрос о том, как создать arraylist из чтения файла строка за строкой, а не о недостатках выбранной структуры данных, потому что это не был вопрос