Как записать в файл результат запроса - 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));

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

14   голосов , оценка 3.857 из 5
Похожие ответы