Как записать в файл результат запроса - C#
Формулировка задачи:
Добрый день. Подскажите пожалуйста, как записать в файл результат запроса
Однако в записи файла ошибка.
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.IO; namespace ConsoleApplication4 { public struct Students : IComparable { public Students(string Name, int course, int group, int Result) : this() { this.Name = Name; this.course = course; this.group = group; this.Result = Result; } public string Name { get; private set; } public int course { get; private set; } public int group { get; private set; } public int Result { get; private set; } public int CompareTo(object obj) // сортировка { Students b = (Students)obj; if (this.Result == b.Result) return 0; else if (this.Result < b.Result) return 1; else return -1; } public override string ToString() { return string.Format("{0}; {1}; {2}; {3}", Name, course, group, Result); } class Program { static void Main(string[] args) { string[] allLines = File.ReadAllLines("E://input.txt"); Students[] students = new Students[allLines.Length]; int[] rang = new int[allLines.Length]; for (int i = 0; i < allLines.Length; i++) { string line = allLines[i]; string[] fields = line.Split(' '); Students student = new Students(fields[0], Convert.ToInt32(fields[1]), Convert.ToInt32(fields[2]), Convert.ToInt32(fields[3])); students[i] = student; rang[i] = students[i].Result; } rang = rang.Distinct().ToArray(); Array.Sort(rang); Array.Reverse(rang); int count = rang[2]; foreach (Students a in students) { Console.WriteLine(a.ToString()); } Array.Sort(students); Console.WriteLine(); Console.WriteLine("сортировка по результату"); var q1 = students.Where(s => s.Result >= count).OrderByDescending(e => e.Result); foreach (var a in q1) { Console.WriteLine(a); } File.WriteAllText("E://output.txt", q1); } } } }
Решение задачи: «Как записать в файл результат запроса»
textual
Листинг программы
q1=students.Where(s => s.Result >= count).OrderByDescending(e => e.Result).ToArray(); // иначе запрос выполнится два раза - один в foreach, другой в записи в файл) //foreach без изменений File.WriteAllText("E://output.txt", string.Join(", ", q1));
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д