Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Общий форум

Страница: 1 |

 

  Вопрос: Из List в txt файл Добавлено: 07.03.05 12:54  

Автор вопроса:  Starik | Web-сайт: нет
Как мне перенести данные записанные в List, который имеет несколько столбцов, перенести в txt файл столбцами и чтобы там столбцы отделялись точкой с запятой.

Ответить

  Ответы Всего ответов: 13  

Номер ответа: 1
Автор ответа:
 HACKER


 

Разработчик Offline Client

Вопросов: 236
Ответов: 8362
 Профиль | | #1 Добавлено: 07.03.05 16:30
В List столбцы? Интерестно... :) Но если ты имел ввиду ListView то...

s$ = ListView1.ListItems(1).SubItems(1)
s$ = s$ & ";" & ListView1.ListItems(1).SubItems(2)
s$ = s$ & ";" & ListView1.ListItems(1).SubItems(3)

ну ты понял... :)

Ответить

Номер ответа: 2
Автор ответа:
 Starik



Вопросов: 24
Ответов: 53
 Web-сайт: нет
 Профиль | | #2
Добавлено: 07.03.05 17:30
Для ListBox тоже самое?

Ответить

Номер ответа: 3
Автор ответа:
 HACKER


 

Разработчик Offline Client

Вопросов: 236
Ответов: 8362
 Профиль | | #3 Добавлено: 07.03.05 18:14
я что-то не понимаю, какаие столбцы ты листбоксе сделал? и как? :)

Ответить

Номер ответа: 4
Автор ответа:
 Starik



Вопросов: 24
Ответов: 53
 Web-сайт: нет
 Профиль | | #4
Добавлено: 07.03.05 18:31
HACKER, изначально, в листбокс записаны данные из таблицы XL (несколько столбцов). В листбоксе получилось несколько столбцов, после этого необходимо данные из листбокса перебросить в txt файл, но так, чтобы в txt файле эти столбцы отделялись друг от друга (;).
Вообще у меня стояла задача - перебросить таблицу XL в txt файл, но столбцы отделялись друг от друга (;).
Эту проблему мне помогли решить, но мне уже интересно как данные из листбокса перебросить в txt файл, но так, чтобы в txt файле эти столбцы отделялись друг от друга (;).
Вот так.
А еще меня заинтересовало, как программно, если возможно, отформатировать в txt файле (выровнить столбцы)данные по столбцам.

Ответить

Номер ответа: 5
Автор ответа:
 HACKER


 

Разработчик Offline Client

Вопросов: 236
Ответов: 8362
 Профиль | | #5 Добавлено: 08.03.05 20:36
В листбоксе не могло получится столбцов! Это обычная строка, добавленная List1.AddItem, там разве что пробелами разделили, типа

List1.AddItem "Столбец 1 Столбец 2"
List1.AddItem "Столбец 1 Столбец 2"
List1.AddItem "Столбец 1 Столбец 2"

Это ты называешь столбцы? Тогда ищи циклом более 1 пробела, это и будет начало другого столбца...

Ответить

Номер ответа: 6
Автор ответа:
 HACKER


 

Разработчик Offline Client

Вопросов: 236
Ответов: 8362
 Профиль | | #6 Добавлено: 08.03.05 20:37
блин даже редактор убирает несколько пробелов, делая один. Вот что я имел ввиду:

List1.AddItem "Столбец 1__________Столбец 2"
List1.AddItem "Столбец 1__________Столбец 2"
List1.AddItem "Столбец 1__________Столбец 2"

Вместо "_" - пробел " "

Ответить

Номер ответа: 7
Автор ответа:
 HACKER


 

Разработчик Offline Client

Вопросов: 236
Ответов: 8362
 Профиль | | #7 Добавлено: 08.03.05 20:51
о! идея

Private Sub Form_Load()
file$ = "C:\1.txt"
List1.AddItem "Столбец 1 Столбец 2 Столбец 3"


Open file$ For Output As #1
For i = 0 To List1.ListCount - 1
s$ = List1.List(i)
s$ = Replace(s$, " ", ";";)
s$ = Replace(s$, ";;", ";";)
s$ = Replace(s$, ";;", ";";)
s$ = Replace(s$, "; ", ";";)
Print #1, s$
Next i
Close #1

End Sub

Ответить

Номер ответа: 8
Автор ответа:
 HACKER


 

Разработчик Offline Client

Вопросов: 236
Ответов: 8362
 Профиль | | #8 Добавлено: 08.03.05 20:54
блин, опять!
Слыш Павел, а это бесит! Оставь ты пробелы, зачем их в 1 переделывать, если у меня их не один...


2 Starik
В List1.AddItem "Столбец1 Столбец2 Столбец3"

между Столбец1, Столбец2.... - сколько угодно пробелов!

Ответить

Номер ответа: 9
Автор ответа:
 HACKER


 

Разработчик Offline Client

Вопросов: 236
Ответов: 8362
 Профиль | | #9 Добавлено: 08.03.05 20:56
сорри, если покажусь что флужу, но может так не уберёт пробелы :)


Private Sub Form_Load()
file$ = "C:\1.txt"
List1.AddItem "Столбец 1         Столбец 2        Столбец 3"


Open file$ For Output As #1
For i = 0 To List1.ListCount - 1
s$ = List1.List(i)
s$ = Replace(s$, "  ", ";";)
s$ = Replace(s$, ";;", ";";)
s$ = Replace(s$, ";;", ";";)
s$ = Replace(s$, "; ", ";";)
Print #1, s$
Next i
Close #1

End Sub

Ответить

Номер ответа: 10
Автор ответа:
 Starik



Вопросов: 24
Ответов: 53
 Web-сайт: нет
 Профиль | | #10
Добавлено: 08.03.05 22:53
HACKER, ты прав, я просто назвал их столбцами (по аналогии с XL). Ну назову их колонками.
Попробовал, как ты написал - не получилось.
Может для VBA, это не подходит? Завтра попробую через VB.

Ответить

Номер ответа: 11
Автор ответа:
 HACKER


 

Разработчик Offline Client

Вопросов: 236
Ответов: 8362
 Профиль | | #11 Добавлено: 09.03.05 01:45
на ВБ 100% работает, с него ж копипестил :)

Ответить

Номер ответа: 12
Автор ответа:
 ZagZag



ICQ: 295002202 

Вопросов: 87
Ответов: 1684
 Профиль | | #12 Добавлено: 09.03.05 12:56
Есть в ЛистБоксе колонки!

Option Explicit

Private Sub Form_Load()
Dim i As Long

    List1.Columns = 3
    For i = 0 To 100
        List1.AddItem Rnd
    Next
End Sub


Скалько за вами ни наблюдаю все об этих колонках думал :)

Ответить

Номер ответа: 13
Автор ответа:
 HACKER


 

Разработчик Offline Client

Вопросов: 236
Ответов: 8362
 Профиль | | #13 Добавлено: 09.03.05 15:56
Это не те столбцы, это столбцы для отображения данных не вертикально, а горизонтально и типа в несколько столбцов. Работая таким макаром с столбцами, нужно будет учитывать сколько листбокс может отобразить вниз строк, чтоб понять к какому элементу принадлежит, элемент List1.list(57), к примеру... И с добавлением данных в определлённый столбец, всё будет смещаться, и того, всё криво.

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам