История развития пистолетов-пулеметов: Предпосылкой для возникновения пистолетов-пулеметов послужила давняя тенденция тяготения винтовок...
Биохимия спиртового брожения: Основу технологии получения пива составляет спиртовое брожение, - при котором сахар превращается...
Топ:
Методика измерений сопротивления растеканию тока анодного заземления: Анодный заземлитель (анод) – проводник, погруженный в электролитическую среду (грунт, раствор электролита) и подключенный к положительному...
Марксистская теория происхождения государства: По мнению Маркса и Энгельса, в основе развития общества, происходящих в нем изменений лежит...
Характеристика АТП и сварочно-жестяницкого участка: Транспорт в настоящее время является одной из важнейших отраслей народного хозяйства...
Интересное:
Распространение рака на другие отдаленные от желудка органы: Характерных симптомов рака желудка не существует. Выраженные симптомы появляются, когда опухоль...
Национальное богатство страны и его составляющие: для оценки элементов национального богатства используются...
Что нужно делать при лейкемии: Прежде всего, необходимо выяснить, не страдаете ли вы каким-либо душевным недугом...
Дисциплины:
2017-10-11 | 323 |
5.00
из
|
Заказать работу |
|
|
Название практической работы: создание проектов с использованием текстовых файлов.
Создание проектов на обработку текстовых файлов
Цель работы: 1) освоить приемы работы с текстовыми файлами;
знания (актуализация)
· понятие файла;
· правила организации доступа к файловым данным;
· причины возникновения распространенных ошибок при работе с файлами;
умения:
· создавать проекты для работы с текстовыми файлами.
Теоретический материал
Файл — это именованная структура данных, представляющая собой последовательность элементов данных, причем количество элементов последовательности практически не ограничено. В первом приближении файл можно рассматривать как массив переменной длины неограниченного размера.
В пространстве имен System.IO предусмотрено четыре класса, которые предназначены для работы с файловой системой компьютера, т.е для создания, удаления переноса и т.д. файлов и каталогов:
- Directory и Fi1е реализуют свои возможности с помощью статических методов, поэтому данные классы можно использовать без создания соответствующих объектов (экземпляров классов);
- DirectoryInfo и FileInfo обладают схожими функциональными возможностями c Directory и Fi1е, но порождены от класса FileSystemInfo и поэтому реализуются путем создания соответствующих экземпляров классов.
Для записи и чтения текстовых файлов очень удобно использовать классы StreamWriter и StreamReader.
Пример чтения и записи текстовых файлов
// Подключаем пространство имен System.IO:
using System.IO;
// Работаем с файлом
private void buttonlO_Click(object sender, EventArgs e)
{
string fileName = @"c:\wutemp\text.txt";
// Если файл с указанным именем существует – прекращаем с ним работу
if (File.Exists(fileName))
{
MessageBox.Show("Указанный файл уже существует.", fileName);
|
return;
}
// Создаем новый файл и записываем в него информацию
StreamWriter sr = File.CreateText(fileName);
sr.WriteLine("Раз, два, три, четыре, пять");
sr.WriteLine("1, 2, 3. 9 1/2 и так далее");
sr.WriteLine("Я изучаю {0} и {1}.", "С#", "Visual Basic");
sr.Close();
}
Пример добавления текста в существующий файл:
private void buttonll_Click(object sender, EventArgs e)
{
string fileName = @"c:\wutemp\text.txt";
// Добавляем одну строчку в текстовый файл
using (StreamWriter sw = File.AppendText(fileName))
{
sw.WriteLine("Добавили еще одну строчку");
}
}
Пример построчного чтения текстового файла
private void buttonl2_Click(object sender, EventArgs e)
{
// 1 способ
using (StreamReader sr= new StreamReader (@"c:\ text.txt"))
{ string line;
// Читаем каждую строку, пока не достигнем конца файла
while ((line = sr.ReadLine())!= null)
{
listBox1.Items.Add(line);
}
// 2 способ
using (StreamReader sr = File.OpenText (fileName))
{
string s = "";
while ((s = sr.ReadLine())!= null)
{
listBox1.Items.Add(line);
}
}
}
Ход работы
1. Создайте проект для решения предложенных ниже задач.
Рекомендации: старайтесь работать с данными из файлов с использованием классов.
Написать программу, которая создает файл «числа.txt» и записывает в него 5 введенных пользователем целых чисел. Убедитесь, что каждое число находится в отдельной строке. Определите сумму и произведение этих чисел. Результат допишите в другой файл. | |
Написать программу, которая вычисляет среднее арифметическое чисел, находящихся в файле. | |
На городской олимпиаде по информатике участникам было предложено выполнить 3 задания, каждое из которых оценивалось по 25-балльной шкале. Известно, что общее количество участников первого тура олимпиады не превосходит 250 человек. На вход программы подаются сведения о результатах олимпиады. В первой строке вводится количество участников N. Далее следуют N строк, имеющих следующий формат: <Фамилия> <Имя> <Баллы> Здесь: - <Фамилия> – строка, состоящая не более чем из 20 символов; - <Имя> – строка, состоящая не более чем из 15 символов; - <Баллы> – строка, содержащая три целых числа, соответствующих баллам, полученным участником за каждое задание первого тура. При этом <Фамилия> и <Имя>, <Имя> и <Баллы> могут быть разделены пробелами и символами табуляции (разным количеством). Примеры входных строк: Петрова Ольга 25 18 16 Калиниченко Иван 14 19 15 Определите фамилию и имя участника, набравшего максимальное количество баллов. Если среди остальных участников есть ученики, набравшие такое же количество баллов, то их фамилии и имена также следует вывести. При этом имена и фамилии можно выводить в произвольном порядке. | |
На вход программы подаются сведения о результатах соревнований по студенческому многоборью. Многоборье состоит из соревнований по четырем видам спорта, участие в каждом из которых оценивается баллами от 0 до 10 (0 баллов получает ученик, не принимавший участия в соревнованиях по данному виду спорта). Победители определяются по наибольшей сумме набранных баллов. Известно, что общее количество участников соревнований не превосходит 100. В первой строке вводится количество учеников, принимавших участие в соревнованиях, N. Далее следуют N строк, имеющих следующий формат: <Фамилия> <Имя> <Баллы> Здесь: - <Фамилия> – строка, состоящая не более чем из 20 символов; - <Имя> – строка, состоящая не более чем из 15 символов; - <Баллы> - строка, содержащая четыре целых числа, соответствующих баллам, полученным на соревнованиях по каждому из четырех видов спорта. При этом <Фамилия> и <Имя>, <Имя> и <Баллы> могут быть разделены пробелами и символами табуляции (разным количеством). Примеры входных строк: Иванова Мария 5 8 6 3 Петров Сергей 9 9 5 7 Напишите программу, которая будет выводить на экран фамилии и имена трех лучших участников многоборья. Если среди остальных участников есть ученики, набравшие то же количество баллов, что и один из трех лучших, то их фамилии и имена также следует вывести. При этом имена и фамилии можно выводить в произвольном порядке. | |
В некотором вузе абитуриенты проходят предварительное тестирование, по результатам которого могут быть допущены к сдаче вступительных экзаменов в первом потоке. Тестирование проводится по двум предметам, по каждому предмету абитуриент может набрать от 0 до 100 баллов. При этом к сдаче экзаменов в первом потоке допускаются абитуриенты, набравшие по результатам тестирования не менее 30 баллов по каждому из двух предметов. На вход программы подаются сведения о результатах предварительного тестирования. Известно, что общее количество участников тестирования не превосходит 500. В первой строке вводится количество абитуриентов, принимавших участие в тестировании, N. Далее следуют N строк, имеющих следующий формат: <Фамилия> <Имя> <Баллы> Здесь: - <Фамилия> – строка, состоящая не более чем из 20 символов; - <Имя> – строка, состоящая не более чем из 15 символов; - <Баллы> – строка, содержащая два целых числа, соответствующих баллам, полученным на тестировании по каждому из двух предметов. При этом <Фамилия> и <Имя>, <Имя> и <Баллы> могут быть разделены пробелами и символами табуляции (разным количеством). Примеры входных строк: Ветров Роман 68 59 Анисимова Екатерина 64 88 Напишите программу, которая будет выводить на экран фамилии и имена абитуриентов, потерпевших неудачу, то есть не допущенных к сдаче экзаменов в первом потоке. При этом фамилии должны выводиться в алфавитном порядке. | |
Напишите программу, которая дописывает в файл «phone.txt» фамилию, имя, и номер телефона, например, вашего товарища. Если файла на диске нет, то программа должна создать его. Добавьте в проект возможность поиска нужных данных как по телефону, так и по фамилии человека. Если в справочнике есть люди с одинаковыми фамилиями, то программа должна выводить список всех этих людей со своими телефонами. |
|
|
2. Ответьте на контрольные вопросы:
- Что такое файл? В чем заключаются особенности текстового файла?
- В чем преимущество использования файлов по сравнению с массивами?
- Какие операции можно производить с файлами?
- Может ли файл состоять из одного элемента?
- Какой файл называется текстовым?
- Можно ли текстовый файл открыть одновременно для чтения и для записи?
3. Оформите и сдайте отчет преподавателю.
|
|
Археология об основании Рима: Новые раскопки проясняют и такой острый дискуссионный вопрос, как дата самого возникновения Рима...
Архитектура электронного правительства: Единая архитектура – это методологический подход при создании системы управления государства, который строится...
Типы оградительных сооружений в морском порту: По расположению оградительных сооружений в плане различают волноломы, обе оконечности...
Особенности сооружения опор в сложных условиях: Сооружение ВЛ в районах с суровыми климатическими и тяжелыми геологическими условиями...
© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!