С Новым годом! Форум программистов, компьютерный форум, киберфорум
Visual Basic .NET
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.75/8: Рейтинг темы: голосов - 8, средняя оценка - 4.75
78 / 24 / 4
Регистрация: 09.01.2015
Сообщений: 214
1
.NET 4.x

ListView: сохранение / чтение из файла

22.01.2015, 22:18. Показов 1559. Ответов 11
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Всем здравствовать!
На форме имеется ListView следующего вида:
Вопрос: Как сию структуру сначала сохранить в файл а потом прочитать из файла?
Миниатюры
ListView: сохранение / чтение из файла  
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
22.01.2015, 22:18
Ответы с готовыми решениями:

Сохранение и Загрузка даных с файла в ListView
Парни, второй день уже мучаюся и не могу никак сделать сохранение даных из ListView в файл и...

Сохранение и чтение из файла
Доброго времени суток. Как записать несколько переменных в один файл и затем их из этого же файла...

Чтение из файла и сохранение
Итак суть проблемы в том что я читаю текст из файла, после того как причитал делаю некие...

Сохранение и чтение из файла
Помогите пожалуйста разобраться в задаче Нужно чтобы при вводе данных они сохранялись в файл и при...

11
4684 / 3638 / 856
Регистрация: 02.02.2013
Сообщений: 3,496
Записей в блоге: 2
23.01.2015, 01:16 2
Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

можно так
VB.NET
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
Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click
    lvOpen("C:\01\01\aa.txt", ListView1.Items)
End Sub
Private Sub Button2_Click(sender As System.Object, e As System.EventArgs) Handles Button2.Click
    lvSave("C:\01\01\aa.txt", ListView1.Items)
End Sub
Private Sub lvSave(ByVal pth As String, ByVal vv As ListViewItemCollection)
    Dim ss(vv.Count - 1) As String
    Dim it As ListViewItem
    For i = 0 To vv.Count - 1
        it = vv.Item(i)
        ss(i) = it.Text & "," & it.SubItems(0).Text & "," & it.SubItems(1).Text
    Next
    IO.File.WriteAllLines(pth, ss)
End Sub
Private Sub lvOpen(ByVal pth As String, ByVal vv As ListViewItemCollection)
    Dim ss() As String = IO.File.ReadAllLines(pth)
    Dim s() As String
    Dim it As ListViewItem
    vv.Clear()
    For i = 0 To ss.Count - 1
        s = ss(i).Split(","c)
        it = New ListViewItem(s(0))
        it.SubItems.Add(s(1))
        it.SubItems.Add(s(2))
        vv.Add(it)
    Next
End Sub
Миниатюры
ListView: сохранение / чтение из файла  
3
78 / 24 / 4
Регистрация: 09.01.2015
Сообщений: 214
23.01.2015, 16:15  [ТС] 3
ovva, Спасибо.
Есть одно но. Если несколько раз подряд нажать на кнопку "Save", то файл заполниться значениями которые были в поле "Имя". Думаю, что для этого нужно полностью переписывать содержимое файла. Вот тут я чего то туплю....
0
4684 / 3638 / 856
Регистрация: 02.02.2013
Сообщений: 3,496
Записей в блоге: 2
23.01.2015, 19:36 4
Виноват, замените строку
VB.NET
1
ss(i) = it.Text & "," & it.SubItems(1).Text & "," & it.SubItems(2).Text
(нулевой элемент в этой коллекции всегда относится к родительскому узлу)
0
78 / 24 / 4
Регистрация: 09.01.2015
Сообщений: 214
23.01.2015, 20:32  [ТС] 5
Цитата Сообщение от ovva Посмотреть сообщение
1
ss(i) = it.Text & "," & it.SubItems(1).Text & "," & it.SubItems(2).Text
Во, совсем другое дело. А я уже начал на другое грешить. Еще раз спасибо.
0
54 / 30 / 4
Регистрация: 15.01.2014
Сообщений: 349
27.01.2015, 12:36 6
У меня две ошибки: Тип "ListViewItemCollection" не определен.Как исправить?
Миниатюры
ListView: сохранение / чтение из файла  
0
1717 / 1204 / 228
Регистрация: 23.12.2010
Сообщений: 1,541
27.01.2015, 12:56 7
так:
VB.NET
1
ByVal vv As ListView.ListViewItemCollection
или так:
VB.NET
1
2
3
4
Imports System.Windows.Forms.ListView
 
Public Class Form1
.....
0
1717 / 1204 / 228
Регистрация: 23.12.2010
Сообщений: 1,541
27.01.2015, 13:01 8
Или еще так, как во вложении
Миниатюры
ListView: сохранение / чтение из файла  
1
54 / 30 / 4
Регистрация: 15.01.2014
Сообщений: 349
27.01.2015, 13:27 9
Индекс находился вне границ массива.
Миниатюры
ListView: сохранение / чтение из файла  
0
1717 / 1204 / 228
Регистрация: 23.12.2010
Сообщений: 1,541
27.01.2015, 13:55 10
проверяй содержимое очередной строки SS, которая будет порезана и там же проверь длину массива s
кстати, файл, с которого читаешь, не заканчивается пустой строкой или нет ли в нем пустых или неполных строк?
0
54 / 30 / 4
Регистрация: 15.01.2014
Сообщений: 349
27.01.2015, 21:30 11
а можно рабочий исходник для примера использования?
0
78 / 24 / 4
Регистрация: 09.01.2015
Сообщений: 214
29.01.2015, 08:32  [ТС] 12
Цитата Сообщение от MACHOMAN Посмотреть сообщение
а можно рабочий исходник для примера использования?
Приведенный код полностью рабочий, внимательно читай все посты.

Получил я твою ошибку, проверь строчку:
VB.NET
1
ss(i) = it.Text & "," & it.SubItems(0).Text & "," & it.SubItems(1).Text
Она должна быть такой:
VB.NET
1
ss(i) = it.Text & "," & it.SubItems(1).Text & "," & it.SubItems(2).Text
0
29.01.2015, 08:32
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
29.01.2015, 08:32
Помогаю со студенческими работами здесь

Чтение и сохранение файла
Почти закончила лабораторную...и закосячила с функциями для работы с файлами(Write_File,Read_File)...

Чтение и сохранение JPEG файла
Как прочитать файл формата .jpg, а потом обработанное(уже мной!) сохранить???

Сохранение и чтение массивов из файла
Помогите пожалуйста, нужно записать в файл и потом прочитать массив int Massiv = new int...

Сохранение и чтение StringGrid из файла
Как правильно прикрутить диалоги открытия и сохранения OpenDialog1 и SaveDialog1, по нажатию...


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

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
Новые блоги и статьи
Книги и учебные ресурсы по C#
InfoMaster 08.01.2025
Базовые учебники и руководства Одной из лучших книг для начинающих является "C# 10 и . NET 6 для начинающих" Эндрю Троелсена и Филиппа Джепикса . Книга последовательно раскрывает основные концепции. . .
Что такое NullReferenceEx­ception и как исправить?
InfoMaster 08.01.2025
NullReferenceException - одно из самых распространенных исключений, с которым сталкиваются разработчики на C#. Это исключение возникает при попытке обратиться к членам объекта (методам, свойствам или. . .
Что такое Null Pointer Exception (NPE) и как это исправить?
InfoMaster 08.01.2025
Null Pointer Exception (NPE) - это одно из самых распространенных исключений в Java, которое возникает при попытке использовать ссылку на объект, значение которой равно null. Это исключение относится. . .
Русский язык в консоли C++
InfoMaster 08.01.2025
При разработке программ на C++ одной из частых проблем, с которой сталкиваются русскоязычные программисты, является корректное отображение кириллицы в консольных приложениях. Эта проблема особенно. . .
Telegram бот на C#
InfoMaster 08.01.2025
Разработка ботов для Telegram стала неотъемлемой частью современной экосистемы мессенджеров. C# предоставляет мощный и удобный инструментарий для создания разнообразных ботов, от простых. . .
Использование GraphQL в Go (Golang)
InfoMaster 08.01.2025
Go (Golang) является одним из наиболее популярных языков программирования, используемых для создания высокопроизводительных серверных приложений. Его архитектурные особенности и встроенные. . .
Что лучше использовать при создании класса в Java: сеттеры или конструктор?
Alexander-7 08.01.2025
Вопрос подробнее: На вопрос: «Когда одновременно создаются конструктор и сеттеры в классе – это нормально?» куратор уточнил: «Ваш класс может вообще не иметь сеттеров, а только конструктор и геттеры. . .
Как работать с GraphQL на TypeScript
InfoMaster 08.01.2025
Введение в GraphQL и TypeScript В современной разработке веб-приложений GraphQL стал мощным инструментом для создания гибких и эффективных API. В сочетании с TypeScript, эта технология. . .
Счётчик на базе сумматоров + регистров и генератора сигналов согласования.
Hrethgir 07.01.2025
Создан с целью проверки скорости асинхронной логики: ранее описанного сумматора и предополагаемых fast регистров. Регистры созданы на базе ранее описанного, предполагаемого fast триггера. То-есть. . .
Как перейти с Options API на Composition API в Vue.js
BasicMan 06.01.2025
Почему переход на Composition API актуален В мире современной веб-разработки фреймворк Vue. js продолжает эволюционировать, предлагая разработчикам все более совершенные инструменты для создания. . .
Архитектура современных процессоров
inter-admin 06.01.2025
Процессор (центральный процессор, ЦП) является основным вычислительным устройством компьютера, которое выполняет обработку данных и управляет работой всех остальных компонентов системы. Архитектура. . .
История создания реляционной модели баз данных, правила Кодда
Programming 06.01.2025
Предпосылки создания реляционной модели В конце 1960-х годов компьютерная индустрия столкнулась с серьезными проблемами в области управления данными. Существовавшие на тот момент модели данных -. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru