Форум программистов, компьютерный форум, киберфорум
Visual Basic .NET
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.82/11: Рейтинг темы: голосов - 11, средняя оценка - 4.82
 Аватар для Qgreg
49 / 49 / 4
Регистрация: 14.06.2011
Сообщений: 92
1
.NET 4.x

Как осуществить поиск в папке с музыкой и добавить названия файлов в массив?

14.06.2011, 22:38. Показов 2027. Ответов 11
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Я добавил WMP на форму

Написал следующий код
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
29
30
31
32
 
Public Class Плеер
    Dim n As Integer = 0
    Dim mus As Array = {"02_-_Jet_-_Rip_It_Up", _
                        "03_-_Cute_Is_What_We_Aim_For_-_Theres_A_Class_For_This", _
                        "04_-_Awww_Dip_-_Cobra_Starship", _
                        "05_-_Meg_and_Dia_-_Roses", _
                        "06_-_Pepper_-_Bring_Me_Along", _
                        "07_-_Amber_Pacific_-_Fall_Back_Into_My_Life", _
                        "08_-_Billy_Talent_-_Red_Flag", _
                        "09_-_This_Providence_-_Walking_on_Water", _
                        "10_-_Ever_We_Fall_-_Youth_Like_Tigers", _
                        "11_-_P.O.D._-_Lights_Out", _
                        "12_-_Big_City_Rock_-_Black_Betty", _
                        "13_I_Love_Being_A_Turtle_Score"} '0,1,2,3,4,5,6,7,8,9,10,11,12
    Private Sub Проверяет_состояние_плеера(ByVal sender As Object, ByVal e As AxWMPLib._WMPOCXEvents_PlayStateChangeEvent) Handles WindowsMediaPlayer1.PlayStateChange
        On Error Resume Next
        If e.newState = WMPLib.WMPPlayState.wmppsMediaEnded Then
            n += 1
            If n = 12 Then '12!
                n = 0
            End If
            WindowsMediaPlayer1.URL = Application.StartupPath & "/музыка/" & mus(n) & ".mp3"
            WindowsMediaPlayer1.Ctlcontrols.play()
        ElseIf e.newState = WMPLib.WMPPlayState.wmppsReady Then
            WindowsMediaPlayer1.Ctlcontrols.play()
        End If
    End Sub
    Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
        WindowsMediaPlayer1.URL = Application.StartupPath & "/музыка/" & mus(0) & ".mp3"
    End Sub
End Class
У меня возник вопрос, как осуществить поиск в папке с музыкой и добавить названия файлов в массив?
А то получается что я жёстко задаю пути.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
14.06.2011, 22:38
Ответы с готовыми решениями:

Как найти названия файлов в текстовом файле, а потом осуществить поиск в папке файлов по этим именам?
Здравствуйте. Подскажите, пожалуйста. У меня есть текстовый файл, где находятся имена файлов и есть папка, где много всяких файлов, в том...

Записать названия файлов в указанной папке в массив
Как записать названия файлов в директории в массив?

Осуществить в папке поиск файлов, имена которых содержат название фирмы, и скопировать определенные их строки
На словах вроде просто звучит цель задачи, но много не понимаю как сделать. Задача простая : пройтись по файлам находящиеся в папке ,...

11
Почетный модератор
 Аватар для Памирыч
23245 / 9156 / 1084
Регистрация: 11.04.2010
Сообщений: 11,014
14.06.2011, 22:50 2
Наверное, как-то так:
VB.NET
1
2
3
4
5
6
7
8
9
        Dim FBD As New FolderBrowserDialog
        Dim Songs() As String
        If FBD.ShowDialog = Windows.Forms.DialogResult.OK Then
            Songs = IO.Directory.GetFiles(FBD.SelectedPath, "*.mp3", IO.SearchOption.AllDirectories)
            'Проверяем, что в массиве:
            For I As Integer = 0 To Songs.Length - 1
                MsgBox(Songs(I), MsgBoxStyle.Information)
            Next
        End If
0
 Аватар для Qgreg
49 / 49 / 4
Регистрация: 14.06.2011
Сообщений: 92
14.06.2011, 23:10  [ТС] 3
VB.NET
1
2
3
4
5
6
7
Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
        For I As Integer = 0 To Songs.Length - 1
            TextBox1.Text &= Songs(I) & vbNewLine
            'mus.SetValue ( Songs(I), n)
n+=1
        Next
    End Sub
Как запихать это в массив?
Ибо mus.SetValue ( Songs(I), n) не пашет.
0
Почетный модератор
 Аватар для Памирыч
23245 / 9156 / 1084
Регистрация: 11.04.2010
Сообщений: 11,014
15.06.2011, 06:04 4
Qgreg, А вот теперь непонятно стало. Запихать в массив строки из текстбокса?
Совет: В качестве плей-листа лучше использовать не текстбокс, а Листбокс.
И потом - какое отношение это имеет к теме?
0
 Аватар для Qgreg
49 / 49 / 4
Регистрация: 14.06.2011
Сообщений: 92
15.06.2011, 21:22  [ТС] 5
Цитата Сообщение от Памирыч Посмотреть сообщение
Qgreg, А вот теперь непонятно стало. Запихать в массив строки из текстбокса?
Совет: В качестве плей-листа лучше использовать не текстбокс, а Листбокс.
И потом - какое отношение это имеет к теме?
C текстбоксом я проверку проводил, забыл убрать.
Про листбокс я знаю.

Мне нужен плейлист в коде,который добавит Названия файлов в директории и субдиректориях в массив, вот такой внутренний плейлист с жёсткими ссылками я показал в заглавии темы.
Но при следующем коде который ты мне подсказал, у меня выскакивает ошибка, и я не могу врубится в чем дело.
VB.NET
1
2
3
4
5
6
7
Dim Songs() As String= IO.Directory.GetFiles(Application.StartupPath & "/музыка/","*.mp3", IO.SearchOption.AllDirectories)
Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
        For I As Integer = 0 To Songs.Length - 1
            mus.SetValue ( Songs(I), n)
             n+=1
        Next
    End Sub
0
Почетный модератор
 Аватар для Памирыч
23245 / 9156 / 1084
Регистрация: 11.04.2010
Сообщений: 11,014
15.06.2011, 21:31 6
Qgreg, Это лишь часть кода. Вставь весь.
0
 Аватар для Ciberst
559 / 436 / 21
Регистрация: 16.12.2010
Сообщений: 953
15.06.2011, 21:40 7
VB.NET
1
2
3
4
Dim mus As Array
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        mus = IO.Directory.GetFiles("G:\Русская музыка\", "*.mp3", IO.SearchOption.AllDirectories)
    End Sub
0
Почетный модератор
 Аватар для Памирыч
23245 / 9156 / 1084
Регистрация: 11.04.2010
Сообщений: 11,014
15.06.2011, 21:46 8
Ciberst, ну а я что написал?
0
 Аватар для Ciberst
559 / 436 / 21
Регистрация: 16.12.2010
Сообщений: 953
15.06.2011, 22:00 9

Не по теме:

а что автор хочет?



Добавлено через 7 минут
может это?
VB.NET
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
Public Class Form1
    Dim mus() As String
 
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        mus = IO.Directory.GetFiles("G:\Русская музыка\", "*.mp3", IO.SearchOption.AllDirectories)
        add("G:\Русская музыка\")
    End Sub
    Private Sub add(ByVal path As String)
        Dim m() As String = IO.Directory.GetFiles(path, "*.mp3", IO.SearchOption.AllDirectories)
        Dim x As Integer = m.Length
        ReDim Preserve mus(m.Length + mus.Length - 1)
        For i = 0 To m.Length - 1
            mus.SetValue(m(i), x + i)
        Next
    End Sub
End Class
1
Почетный модератор
 Аватар для Памирыч
23245 / 9156 / 1084
Регистрация: 11.04.2010
Сообщений: 11,014
15.06.2011, 22:01 10
Он хочет получить все mp3-файлы в массив из папки чтобы воспользоваться им в качестве плей-листа, наверное:
Цитата Сообщение от Qgreg Посмотреть сообщение
Мне нужен плейлист в коде,который добавит Названия файлов в директории и субдиректориях в массив, вот такой внутренний плейлист с жёсткими ссылками я показал в заглавии темы.
Просто сейчас он пока не может понять что ему дают, все получится.
1
 Аватар для Qgreg
49 / 49 / 4
Регистрация: 14.06.2011
Сообщений: 92
15.06.2011, 22:21  [ТС] 11
Хм, надо будет подумать.
За примеры спасибо.
Как доделаю, выложу окончательный вариант со всеми правками.

Так вот на подобии 1 и 2 примеров своих исходников я пытаюсь сделать 3 вариант 2-го без жёстких путей, с автосканом папок.

Вот исходники 1 и 2
Вложения
Тип файла: zip Плееры.zip (311.0 Кб, 17 просмотров)
1
 Аватар для Qgreg
49 / 49 / 4
Регистрация: 14.06.2011
Сообщений: 92
18.06.2011, 21:56  [ТС] 12
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
'Проигрывает фоновую музыку, которая сменяется
'Без управляющих элементов плеера на форме
Public Class Плеер
    Dim n As Integer = 0
    'Dim Songs() As String = IO.Directory.GetFiles(Application.StartupPath, "*.mp3", IO.SearchOption.AllDirectories)
    Dim files As System.Collections.ObjectModel.ReadOnlyCollection(Of String) = My.Computer.FileSystem.GetFiles(Application.StartupPath, FileIO.SearchOption.SearchAllSubDirectories, "*.mp3")
    Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
        'WindowsMediaPlayer1.URL = Songs(n)
        WindowsMediaPlayer1.URL = files.Item(n)
    End Sub
    Private Sub Проверяет_состояние_плеера(ByVal sender As Object, ByVal e As AxWMPLib._WMPOCXEvents_PlayStateChangeEvent) Handles WindowsMediaPlayer1.PlayStateChange
        On Error Resume Next
        If e.newState = WMPLib.WMPPlayState.wmppsMediaEnded Then
            n += 1
            If files.Count = n Then
                n = 0
            End If
            'If Songs.Length = n Then
            '    n = 0
            'End If
            'WindowsMediaPlayer1.URL = Songs(n)
            WindowsMediaPlayer1.URL = files.Item(n)
            WindowsMediaPlayer1.Ctlcontrols.play()
        ElseIf e.newState = WMPLib.WMPPlayState.wmppsReady Then
            WindowsMediaPlayer1.Ctlcontrols.play()
        End If
    End Sub
End Class
Решение лежало передо мной, а я его не видел.
Спасибо.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
18.06.2011, 21:56
Помогаю со студенческими работами здесь

Как осуществить поиск по содержимому в папке
Задача такая: есть папка, в ней txt файлы. Мне нужно осуществить поиск внутри этих файлов. Нужно создать поле куда вводится искомая...

Как выполнить на Fortrane скрытие файлов в папке, или осуществить запуск другой программы?
Все предыдущие программы, которые я писал на Fortrane(90) были в основном связаны с прикладной математикой. Но появился интерес в написании...


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

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему

Редактор формул (кликните на картинку в правом углу, чтобы закрыть)
Новые блоги и статьи
Winforstrap или красявый дизайн своими руками на HTML+JS+Winform­s
anomal6 04.03.2025
Сидел тут вечером ковырял проект на MAUI, и как же глупо создаются пакеты MSIX и система обновлений пакета публикации, но не об этом. Бывает нужен современный дизайн программы а писать на MAUI,. . .
Формат данных для симуляции физики, посредством распространённы­­­­­­­х не обученных моделей.
Hrethgir 04.03.2025
Что-то как-то снова потерялось, зато катангенсы закатангесились в одном сообщении. На днях писал, что планирую для работы апгрейдить (на этот раз удачно) девайс для работы (конкретно - здоровья для,. . .
Концепция variadic
CoderHuligan 04.03.2025
Мне не очень нравится (а кому это нравится?) что у нас есть отдельно компилятор, отдельно линковщик, причем со своим собственным командным языком. При этом усложнении надо знать помимо языка. . .
Java Record или Kotlin Data Class: что лучше для неизменяемых данных
Wired 04.03.2025
Java Record и Kotlin Data Class — два мощных инструмента для обуздания неизменяемых структур данных, каждый со своим уникальным подходом к решению этой задачи. История их появления весьма. . .
Создание производительны­­­х API с Java и gRPC
Wired 04.03.2025
В мире микросервисной разработки вопрос производительности часто становится краеугольным камнем. И хотя REST API давно завоевал сердца разработчиков своей простотой и интуитивностью, при высоких. . .
Что нового в JDK 24
Wired 04.03.2025
JDK 24 — это настоящий прорыв в эволюции Java, который кардинально меняет правила игры. В этом релизе разработчики Oracle наконец-то довели до ума множество критически важных улучшений в. . .
Разработка блокчейн с использованием Java: смарт-контракты и dApp
Wired 04.03.2025
Погружаясь в мир блокчейн-разработки на Java, разработчик получает доступ к внушительному арсеналу инструментов. В отличие от Solidity, который "заперт" в экосистеме Ethereum, Java предоставляет. . .
WebAssembly в Kubernetes
stackOverflow 03.03.2025
В современной экосистеме облачных технологий WebAssembly (Wasm) становится все более значимым компонентом, предлагая уникальный подход к выполнению кода в распределенных системах. Эта технология. . .
GitHub Actions или Jenkins: Выбираем CI/CD платформу
stackOverflow 03.03.2025
Непрерывная интеграция и развертывание (CI/ CD) изменили подход к разработке программного обеспечения, превратив его в бесшовный процесс от написания кода до развертывания в продакшн. GitHub Actions и. . .
Автоматизация тестирования Pull Request в Kubernetes: Интеграция с GitHub Actions и GKE
stackOverflow 03.03.2025
Масштабные проекты с использованием Kubernetes требуют надежной системы тестирования изменений перед их внедрением в продакшн-среду. Традиционный подход с ручной проверкой Pull Request не справляется. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru