Текстовый файл

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
oskolok_vatbI
Продвинутый пользователь
Продвинутый пользователь
Аватара пользователя
 
Сообщения: 112
Зарегистрирован: 07.07.2007 (Сб) 16:13
Откуда: г. Казань

Текстовый файл

Сообщение oskolok_vatbI » 12.01.2008 (Сб) 14:46

В текстовом файле данные отделены друг от друга пробелами, типа:
**.** *.* *.*
я хочу разделить его так, чтобы мне в разные текстбоксы разные колонки попадали, но количесво пробелов разделителей может быть разным. Как мне привести любое количество пробелов к одному чтобы потом поделить данные функцией Split ? Спасибо.

BV
Thinker
Thinker
Аватара пользователя
 
Сообщения: 3987
Зарегистрирован: 12.09.2004 (Вс) 0:55
Откуда: Молдавия, г. Кишинёв

Сообщение BV » 12.01.2008 (Сб) 15:04

А зачем? Дели Split'ом, а потом режь Trim'ом.
const char *out = "|*0>78-,+<|"; size_t cc = char_traits<char>::length(out);
for (size_t i=0;i<cc;i++){cout<<static_cast<char>((out[i]^89));}cout<<endl;

oskolok_vatbI
Продвинутый пользователь
Продвинутый пользователь
Аватара пользователя
 
Сообщения: 112
Зарегистрирован: 07.07.2007 (Сб) 16:13
Откуда: г. Казань

Сообщение oskolok_vatbI » 12.01.2008 (Сб) 16:57

Не могу понять как Split`ом делить если много колонок и разное количество пробелов. Вот как поделить строку "Иванов Иван Иванович" - я понял, а тут не могу. Помогите пожалуйста.

BV
Thinker
Thinker
Аватара пользователя
 
Сообщения: 3987
Зарегистрирован: 12.09.2004 (Вс) 0:55
Откуда: Молдавия, г. Кишинёв

Сообщение BV » 12.01.2008 (Сб) 19:14

Даже Trim'ом резать не надо...

Код: Выделить всё
Option Explicit

Private Const MY_DATA As String = " one   two  three      four   five " & _
                                  "six  seven     eight nine    ten     "

Private Sub Form_Load()
    Call Foo
End Sub

Private Sub Foo()
    Dim strData() As String
    Dim i As Long
    strData = Split(MY_DATA, Chr$(32))
    For i = LBound(strData) To UBound(strData)
        If Len(strData(i)) Then
            Debug.Print strData(i) & vbTab & Len(strData(i))
        End If
    Next i
End Sub
const char *out = "|*0>78-,+<|"; size_t cc = char_traits<char>::length(out);
for (size_t i=0;i<cc;i++){cout<<static_cast<char>((out[i]^89));}cout<<endl;

oskolok_vatbI
Продвинутый пользователь
Продвинутый пользователь
Аватара пользователя
 
Сообщения: 112
Зарегистрирован: 07.07.2007 (Сб) 16:13
Откуда: г. Казань

Сообщение oskolok_vatbI » 12.01.2008 (Сб) 19:32

Большое спасибо.


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 71

    TopList