Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.53/15: Рейтинг темы: голосов - 15, средняя оценка - 4.53
Flozz
1

Вывод информации в текстовый файл

28.12.2011, 13:23. Просмотров 2770. Ответов 3
Метки нет (Все метки)

Здравствуйте, есть задача, нужно написать программу, которая вводит в файл *.txt данные о :
- работнике
- отделе в котором он работает
- его заработной плате
Также, нужно организовать вывод в консоль суммы зарплат на 1 отдел.

Вообщем первое, с вводом файл я написал. А вот вывод в консоль суммы зарплат по одному отделу, у меня не получается.

Собственно код.

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.IO;
 
namespace ConsoleApplication12
{
    class Program
    {
       public static void ex1()
       {
            string fio, otdel;
            int zp;
            Console.Write("Введите кол-во работников : ");
            int rab = Convert.ToInt32(Console.ReadLine());
            StreamWriter sw = new StreamWriter("file.txt");
            //string[] fio_mass = new string[rab];
            //string[] otdel_mass = new string[rab];
            //int[] zp_mass = new int[rab];
            for (int i = 1; i <= rab; i++)
            {
                Console.WriteLine("Введите фамилию работника : ");
                fio = Console.ReadLine();
                Console.WriteLine("Введите отдел : ");
                otdel = Console.ReadLine();
                Console.WriteLine("Введите размер з/п работника : ");
                zp = Convert.ToInt32(Console.ReadLine());
                sw.WriteLine(fio);
                sw.WriteLine(otdel);
                sw.WriteLine(zp);
            }
 
                sw.Close();
       }
       public static void ex2() // вот это по идее должно искать работников из одного отдела, и суммировать их зарплату. Но пока тут написан только вывод из файла в консоль( 
        {
            int counter = 0;
            string line;
            StreamReader sw = new StreamReader("file.txt");
            while ((line = sw.ReadLine()) != null)
             {
                  System.Console.WriteLine(line);
                  counter++;
             }
 
         sw.Close();
 
        }
static void Main(string[] args)
{
    int menu;
    do
    {
       Console.Write("Меню:\n1) Ввод работников, отдела работников и их з/п.\n2) Вывод общей суммы выплат по отделу.\n3) Выйти из программы.\n\nВаше решение: ");
       menu = int.Parse(Console.ReadLine());
        switch (menu)
         {
            case 1:
                ex1();
                break;
            case 2:
                ex2();
                break;
            case 3:
                Console.WriteLine("Вы решили выйти");
                break;
            default:
                Console.WriteLine("Вы что-то другое нажали...");
                break;
          }
        Console.Write("\n\n\t\t\tНажмите любую клавишу...");
        Console.ReadLine();
        Console.Clear();
 
    }
        while (menu != 3);
     
        }
    } 
}
Если кто сможет написать/дописать функцию ex2, было бы просто великолепно.
Также принимаю советы и ссылки где можно почитать эту тему
Заранее спасибо.
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
28.12.2011, 13:23
Ответы с готовыми решениями:

Запись информации в текстовый файл
программа, которая позволит записывать в текстовый файл информацию (марка, модель, год выпуска)....

Запись в текстовый файл информации
Здравствуйте! Подскажите, пожалуйста, как можно записывать информацию в текстовый файл,...

Дозапись информации в текстовый файл
Как записать содержимое textbox в конец текстового файла?

Вывод информации в текстовый файл
Здравствуйте Как можно вывести информацию с Грида в обычный *.txt файл. Везде стринггрид, а про...

3
56 / 56 / 10
Регистрация: 27.12.2011
Сообщений: 141
28.12.2011, 18:04 2
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
/// <summary>
        /// Вычисление ЗП по отделу
        /// </summary>
        /// <param name="OtdelName">Название отдела</param>
        public static void ex2(string OtdelName) 
        {
            double SumZp = 0.0000d;
            StreamReader read = new StreamReader("file.txt");
            string[] sData = new string[1];
            sData[0] = read.ReadToEnd();
            read.Close();
            sData = sData[0].Split(new string[] { "\r\n" }, StringSplitOptions.RemoveEmptyEntries);
            Console.Write("Сумма зарплат по отделу {0} равна: ", OtdelName);
            for (int i = 0; i < sData.Length; i += 3)
            {
                if (sData[i + 1] == OtdelName)
                {
                    SumZp += Convert.ToDouble(sData[i + 2]);
                }
            }
            Console.Write(" {0} ", SumZp);
        }
Как то так)
0
Flozz
28.12.2011, 21:08 3
Караман, Слушай а она у тебя закомпилилась в моем коде?? Ибо я когда вставляю то что ты написал, он начинает ругаться в case, writeline.
Это если в case написать
C#
1
2
3
   case 2:
                        ex2(string OtdelName);
                        break;
А если не добавлять (string Otdel name), начинает ругаться на ex2() и говорить что не одна из перегрузок метода "ex2()" не принимает "0" аргументов.
56 / 56 / 10
Регистрация: 27.12.2011
Сообщений: 141
29.12.2011, 15:43 4
Flozz, В case тебе нужно её так использовать:
C#
1
2
3
4
case 2: 
          {
           ex2("Сдесь название твое отдела");// или вот так ex2(OtdelName); - OtdelName содержит строку с названием отдела
          }
Добавлено через 1 минуту
ну и break;
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
29.12.2011, 15:43

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Запись в текстовый файл информации о студентах, поиск информации, сортировка
Здравствуйте помогите пожалуйста:( 3.1 Для записи в текстовый файл информации о студентах Вашей...

Вывод в текстовый документ информации о файле
Привет друзья, мне дали задание вывести атрибуты, короткое имя, розширение, дату для текстового...

Сохранение информации в текстовый файл
Здравствуйте! Имею следующий код: string text = &quot;egwge\nqegqeg&quot;; ...

запись информации в текстовый файл
Здравствуйте. Помогите пожалуйста исправить код php-файла, который должен осуществлять запись...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.