vb.net - 将音频文件从 Windows 窗体应用程序资源复制到硬盘驱动器

标签 vb.net audio visual-studio-2013 resources copy

使用 Visual Studio 2013

我一直在尝试从 vb.net Windows 窗体应用程序复制音频 .wav 文件,但无济于事。我尝试了几种方法:

File.Copy(My.Resource.click1, "c:\destination folder", True)

我尝试过调用 Sub

Dim ms As New MemoryStream
My.Resources.click1.CopyTo(ms)
Dim ByteArray() As Byte = ms.ToArray
sfr(toPath2 & "\click1.wav", ByteArray)

Public Sub sfr(ByVal FilePath As Byte, ByVal File As Object)
    Dim FByte() As Byte = File
    My.Computer.FileSystem.WriteAllBytes(FilePath, FByte, True)
End Sub

我也尝试过

File.WriteAllText(toPath2 & "\click1.wav", My.Resources.click1)

如何将音频资源复制到硬盘?

最佳答案

这是 tested C# version 的 VB.Net 版本:

Dim asm As Assembly = Assembly.GetExecutingAssembly()
Dim file As String = String.Format("{0}.click1.wav", asm.GetName().Name)
Dim fileStream As Stream = asm.GetManifestResourceStream(file)
SaveStreamToFile("c:\Temp\click1.wav", fileStream)  '<--here is the call to save to disk


Public Sub SaveStreamToFile(fileFullPath As String, stream As Stream)
    If stream.Length = 0 Then
        Return
    End If

    ' Create a FileStream object to write a stream to a file
    Using fileStream As FileStream = System.IO.File.Create(fileFullPath, CInt(stream.Length))
        ' Fill the bytes[] array with the stream data
        Dim bytesInStream As Byte() = New Byte(stream.Length - 1) {}
        stream.Read(bytesInStream, 0, CInt(bytesInStream.Length))

        ' Use FileStream object to write to the specified file
        fileStream.Write(bytesInStream, 0, bytesInStream.Length)
    End Using
End Sub

+1 在发帖前详细说明您的尝试,让我知道您的进展。

关于vb.net - 将音频文件从 Windows 窗体应用程序资源复制到硬盘驱动器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26310984/

相关文章:

asp.net - 我应该如何在 Visual Studio 2015 中部署 Asp.Net 项目?

ASP.NET 动态更改中继器项内的下拉控件 ID

android - AudioTrack如何实现左右声道分开播放?

javascript - 如何解决 audio.play() 的问题?在 react

c# - NAudio获得左右扬声器水平吗?

asp.net - DropDownList SelectedIndex 值未在 AutoPostback 上更新

asp.net - 嵌套中继器错误: Object reference not set to an instance of an object

c++ - Pthread + Visual Studio 2013 编译错误

visual-studio - 在 Visual Studio 2013 中为 CUDA 7.0 启用语法高亮

visual-studio-2013 - Visual Studio Code 编辑器指示器边距字形引用