работа со строками

Язык Visual Basic на платформе .NET.

Модераторы: Ramzes, Sebas

Anta
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 106
Зарегистрирован: 19.08.2012 (Вс) 22:00

работа со строками

Сообщение Anta » 13.02.2013 (Ср) 15:39

подскажите пожалуйста, записываю имена и путь к файлу в переменную, количество файлов от одного до 10, каким образом, в цикле, записать все названия в одну строку через пробел. спасибо!

FireFenix
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1640
Зарегистрирован: 25.05.2007 (Пт) 10:24
Откуда: Mugen no Sora

Re: работа со строками

Сообщение FireFenix » 13.02.2013 (Ср) 17:06

Код: Выделить всё
Dim FilePath as String
Dim Result as String

Цикл
    '
    'некоторый код получения пути и файла в переенную FilePath
    '
    Result &= " " & FilePath
Конец Цикла

'Переменная Result содержит все пути через пробел
Птицей Гермеса меня называют, свои крылья пожирая... сам себя я укрощаю
私はヘルメスの鳥 私は自らの羽根を喰らい 飼い慣らされる

Qwertiy
Доктор VB наук
Доктор VB наук
 
Сообщения: 2753
Зарегистрирован: 26.06.2011 (Вс) 21:26

Сообщение Qwertiy » 13.02.2013 (Ср) 17:47

FireFenix, зачем такое пишешь? E тебя пробел лишний. А ещё, лучше использовать StringBuilder.
Anta, не надо использовать цикл. Есть String.Join.

FireFenix
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1640
Зарегистрирован: 25.05.2007 (Пт) 10:24
Откуда: Mugen no Sora

Re: работа со строками

Сообщение FireFenix » 13.02.2013 (Ср) 23:33

Qwertiy писал(а):FireFenix, зачем такое пишешь?

Потому, что сказанно
Anta писал(а):в цикле


Qwertiy писал(а):А ещё, лучше использовать StringBuilder.

Не отрицаю, но для больших масивов. Для относительно маленьких String хватает
Птицей Гермеса меня называют, свои крылья пожирая... сам себя я укрощаю
私はヘルメスの鳥 私は自らの羽根を喰らい 飼い慣らされる

Anta
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 106
Зарегистрирован: 19.08.2012 (Вс) 22:00

Re: работа со строками

Сообщение Anta » 14.02.2013 (Чт) 3:12

Вот таким образом доступ к подсчету количества искомых файлов и полному пути с именем файла:
Код: Выделить всё

        Dim di As System.IO.DirectoryInfo = New System.IO.DirectoryInfo("E:\test\")
        dim namephoto as string
        Dim nbFile As Integer
        Dim Repertoire As String = di.ToString
        Dim parametr as string
        If di.Exists Then
            nbFile = My.Computer.FileSystem.GetFiles(Repertoire, FileIO.SearchOption.SearchTopLevelOnly, "*.jpg").Count()
                     
            For Each fi As System.IO.FileInfo In di.GetFiles
                If fi.Extension Like ".jpg" Then
                    namephoto = fi.FullName
  ' теперь необходимо соединить все встречающиеся nomphoto в одну строку через пробел
      builder.Append(nomphoto)  как указать пробел? потому как каждый раз начинается строка снова в данном случае
             parametr=builder.toString
или другой способ?
parametr

                End If
            Next
        End If

количество итераций известно, т.к. известно количество файлов. Спасибо.

Qwertiy
Доктор VB наук
Доктор VB наук
 
Сообщения: 2753
Зарегистрирован: 26.06.2011 (Вс) 21:26

Сообщение Qwertiy » 14.02.2013 (Чт) 6:18

Сколько можно такие вещи объяснять?
Код: Выделить всё
If Directory.Exists(Repertoire) Then Smth = String.Join(" ", Directory.GetFiles(Repertoire, "*.jpg"))
А всё остальное выкинуть.

Anta
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 106
Зарегистрирован: 19.08.2012 (Вс) 22:00

Re: работа со строками

Сообщение Anta » 16.02.2013 (Сб) 0:35

Спасибо за совет.


Вернуться в Visual Basic .NET

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

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

    TopList