Получить устаревшее имя сервера из текстового файла
Найдите устаревшие серверы из списка серверов.
Возьмите входной файл как serverList.txt. В дата-центре есть несколько серверов. Вся информация о программном обеспечении, установленном на нескольких серверах, сохраняется в этом файле.
Например, информация о программном обеспечении, сохраненная в файле, выглядит следующим образом.
Сервер1, База Данных, MySQL, 5.5
Сервер2, База Данных, MySQL, 5.1
Server3, OS, Ubuntu, 10.04
Сервер1, ОС, Убунту 12.04
Сервер2, ОС, Убунту 12.04
Server3, Язык, Python, 2.6.3
Этот файл указывает, что на сервере 1 установлена версия 5.5 MySQL, на сервере 2 установлена версия 5.1, а на сервере 3 установлена версия 10.04 Ubuntu. Для этой программы все номера версий имеют вид X. Y или X. Y. Z, где X, Y и Z состоят только из цифр.
Напишите программу, которая читает этот файл и печатает список имен серверов, имеющих по крайней мере одну установку программного обеспечения, которая является устаревшей версией.
Таким образом, в этом случае вывод вашей программы должен быть:
Сервер2
Сервер 3
Что я уже пробовал:
var list = new List<string>(); //string strFileContent = string.Empty; using (StreamReader sr = new StreamReader(@"D:\input.txt")) { string Line; while ((Line = sr.ReadLine()) != null) { //strFileContent += Line + ","; list.Add(Line); } }
EDIT (CHill60): OP продвинул код дальше...
Цитата:пробовали до сих пор потом застряли -
var list = new List<string>(); //string strFileContent = string.Empty; Dictionary<string, string> latestVersion = new Dictionary<string, string>(); using (StreamReader sr = new StreamReader(@"D:\input.txt")) { string Line; while ((Line = sr.ReadLine()) != null) { //strFileContent += Line + ","; list.Add(Line); } } string str = string.Empty; for (int i = 0; i <= list.Count; i++) { str = list[i].ToString(); string[] stt = str.Split(','); for (int j = 0; j <= stt.Length; j++) { } }
F-ES Sitecore
Как только у вас есть "линия", вы можете использовать строку.Разделите с помощью запятой, чтобы получить соответствующие значения в массив, а затем обработать этот массив. Google "c# string split" для примера кода.