Как сохранить listbox в файл c
Перейти к содержимому

Как сохранить listbox в файл c

  • автор:

Как сохранить listbox в файл c

В строке (Collection) следует нажать маленькую кнопку справа и в появившемся редакторе списка ввести строки как показано на рисунке:

В итоге получится список выбора в listBox1. Следующим шагом следует создать событие по вставке выбранной строки из списка в текстовый редактор textBox1.
Событие будет происходить по двойному щелчку мышки на выбранной строке в listBox1. Для создания события следует переключиться на раздел Events и в строке ввода напротив события DoubleClick, двойным щелчком мыши создать событие listBox1_DoubleClick.

private void listBox1_DoubleClick(object sender, EventArgs e)
textBox1.Text += listBox1.SelectedItem.ToString();
>

Строку textBox1.Text += listBox1.SelectedItem.ToString(); дописываем самостоятельно. Значок += означает, что текст в textBox1 следует увеличить на выбранную сторку из listBox1.
Запустим полученное приложение и попробуем написать страничку на HTML.
Сначала вставим двойным щелчком необходимые тэги:

А затем, допишем содержание странички и параметры тэгов. Например, как показано на рисунке.

Нажав на кнопку сохранить, сохраним наш текст на диске, например С, с именем test. Переключимся в Windows и на диске С найдём наш файл.

Значок нашего файла принял форму WEB браузера установленного на компьютере по умолчанию. Запустим этот файл и убедимся, что у нас всё получилось.

Так, как статья посвящена объекту listBox, рассмотрим, что ещё может этот объект.
У объекта listBox есть методы, которые позволяют манипулировать элементами (Items) списка:
Add — Добавление элемента (строки) в список;
RemoveAt — Удаляет элемент списка;
Clear — Очищает список.
Добавим на нашу форму ещё объекты Button4, Button5 и textBox2, как показано на рисунке:

В элемент textBox2 будем вводить новые тэги, и добавлять их в список при нажатии кнопки Button4. Кнопкой Button5 будем наоборот удалять ненужные тэги из списка. На кнопках следует создать соответствующие надписи. Двойным щелчком мыши создадим событие на нажатие кнопки Button4 (добавить).

private void button4_Click(object sender, EventArgs e)
// Методом Add добавляем в список текст из textBox2
listBox1.Items.Add(textBox2.Text);
// Очищаем от текста строку ввода
textBox2.Text = «»;
>

Убедимся, что кнопка «Добавить» работает.

Для удаления ошибочно введённых или не нужных тэгов задействуем кнопку «Удалить». Создадим для неё событие:

private void button5_Click(object sender, EventArgs e)
// Проверяем, есть ли в списке выделенная строка
if (listBox1.SelectedIndex == -1)
// Если нет, то выводим сообщение.
MessageBox.Show(«Нет выделенной строки»); else
// Иначе .. Удаляем выделенную строку
listBox1.Items.RemoveAt(listBox1.SelectedIndex);
>

Очевидно, что манипулируя со списком тэгов мы не можем сохранить их для следующей сессии работы с нашим блокнотом, так как список после закрытия программы не сохраняется.
Задействуем кнопку Button1 для сохранения списка в файле. Сделаем на ней надпись «Сохранить». Будем сохранять список в файле с именем tags.txt имя файла и расширение не имеют особого значения. Сам файл поместим на диск С, но можно поместить на любой другой диск и в любую папку, например с нашим проектом. Создадим событие на нажатие кнопки:

private void button1_Click(object sender, EventArgs e)
// Создаём переменную sw для записи данных в поток (файл) с именем C:\\tags.txt
using (StreamWriter sw = new StreamWriter(«C:\\tags.txt»))
// Первой строкой записываем в файл число строк в нашем списке
sw.WriteLine(listBox1.Items.Count.ToString());
// В цикле записываем все строки в файл.
// Первая строка в списке имеет индекс 0
// Count — число строк в списке
for (int j = 0; j < listBox1.Items.Count; j++)
sw.WriteLine(listBox1.Items[j]);
>
>

Запустим приложение и нажмём кнопку «Сохранить». Переключимся в Windows И в проводнике найдём наш файл tags.txt. Откроем его и убедимся, что все строки записались.

И, наконец, следует создать событие, которое будет загружать сохранённый файл в список тэгов. Создадим ещё одну кнопку Button6 и озаглавим её «Загрузить». Создадим для неё событие нажатия кнопки:

private void button6_Click(object sender, EventArgs e)
// Очищаем список от содержимого
listBox1.Items.Clear();
// Создаём переменную reader для чтения из потока (файла C:\\tags.txt)
using (StreamReader reader = new StreamReader(«C:\\tags.txt»))
// Считываем первую строку чтобы получить число строк в списке
string z = reader.ReadLine();
//В цикле считываем остальные строки из файла в список тэгов
for (int j = 0; j < Convert.ToDouble(z); j++)
listBox1.Items.Add(reader.ReadLine());
>

Запустим программу попробуем пополнить список тэгов, затем сохранить его. После чего закрыть программу, вновь открыть и загрузить соранённый список тэгов.

©Гуков Константин Михайлович 2006 — 2012 Почта: [email protected]

Как сохранить listbox в файл c

Регистрация: 18.01.2012

Сообщений: 26

Запись данных данных из ListBox в файл

В-общем C# вижу всего лишь третий день, Си тоже особо не знаю.
Необходимо из ListBox занести данные в файл. Делаю с помощью SaveFileDialog. Однако что-то где-то напутала или недоделала. Вот мой код:

private void Tab5_btn2_Click(object sender, EventArgs e) < Stream myStream; SaveFileDialog saveFileDialog1 = new SaveFileDialog(); saveFileDialog1.Filter = "txt files (*.txt)|*.txt"; saveFileDialog1.FilterIndex = 2; saveFileDialog1.RestoreDirectory = true; if (saveFileDialog1.ShowDialog() == DialogResult.OK) < if ((myStream = saveFileDialog1.OpenFile()) != null) < StreamWriter sw = new StreamWriter(myStream); for (int i = 0; i < Tab5_listBox1.Items.Count-1; i++) < sw.Write(Tab5_listBox1.Items[i].ToString()); sw.Write("\n"); >myStream.Close(); > > >

___________
Код нужно оформлять по правилам:
тегом [CODE]..[/СODE] (это кнопочка с решёточкой #)
Не забывайте об этом!
Модератор.

Последний раз редактировалось Serge_Bliznykov; 20.01.2012 в 15:43 .

Sample Code

Выведите количество вариантов расстановки ладьи на шахматной доске, чтобы ни одна из них не угрожала другой

2016-04-17 11:29:32

Выведите количество вариантов расстановки ладьи на шахматной доске, чтобы ни одна из них не угрожала другой. Размер доски NxN (n вводится пользователем). Предусмотрите возможность вывода и самих вариантов расстановки.

Дан текст из строчных латинских букв, за которым следует точка. Определить каких букв-гласных (a,e,o,i,u) или согласных — больше в этом тексте

2016-04-17 11:27:41
Использовать множество, при выполнении этого задания.

Найдите значения функции y=x2+1,для x=0.2,0.4,0.6. 20

2016-04-17 11:25:18

Задайте форматированный вывод для X всего 5 знаков, из них после запятой-один. Для Y всего восемь знаков, из них после запятой-два.

Вычислить значение функции: y=sin(x/(3+x^5))+lg(1,3x+x^3)

2016-04-17 11:22:13

Дана последовательность целых чисел (от -100 до 100) записанных через пробел. Требуется построить эту последовательность по возрастанию

2016-04-17 11:20:38

Дана последовательность целых чисел (от -100 до 100) записанных через пробел. Требуется построить эту последовательность по возрастанию. Входные данные: в первой строке записано целое число N, во вторйо строке последовательность чисел через пробел. Выходные данные: в единственной строке записать последовательность чисел по возрастанию.

Кодирование методом контроля чётности

2016-04-17 11:18:45

Вводится k — число символов в блоке и последовательность двоичных символов, длина которой кратна (k-1). Если кратность нарушается, то последние символы последовательности игнорируются. Для каждой комбинации из (k-1) символов по методу контроля четности определяется значение k-ого, контрольного, символа и вся комбинация из k символов добавляется в результирующую последовательность, выводимую на экран по окончании кодирования всей входной последовательности символов.

Вывести на экран сумму или произведение чисел в зависимости от условия

2016-04-14 15:10:23

Написать программу, запрашивающую 3 целых числа и выводящая сумму этих чисел на экран, если максимум этих чисел больше 12. Вывод на экран произведения этих чисел, если минимум этих чисел меньше или равен 12.

Перенос текста из listbox в файл

Все элементы хранятся в свойстве Items . Нужно будет пройтись по ним циклом:

string writePath = "file.txt"; using (StreamWriter sw = new StreamWriter(writePath, false, System.Text.Encoding.Default)) < foreach(var item in yourListBox.Items) < sw.WriteLine(item.ToString()); >> 

Если ListBox привязан к данным, то возможно ToString и элементы потребуется преобразовать перед выводом.

Отслеживать
ответ дан 5 мар 2021 в 5:38
default locale default locale
18.5k 4 4 золотых знака 31 31 серебряный знак 45 45 бронзовых знаков

  • c#
  • winforms
    Важное на Мете
Похожие

Подписаться на ленту

Лента вопроса

Для подписки на ленту скопируйте и вставьте эту ссылку в вашу программу для чтения RSS.

Дизайн сайта / логотип © 2024 Stack Exchange Inc; пользовательские материалы лицензированы в соответствии с CC BY-SA . rev 2024.1.26.3951

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *