vb.net - 从流生成字节数组

标签 vb.net silverlight bytearray filestream

我正在尝试从“.rtf”文件流生成字节数组。 代码如下:

Public Sub Button_Click(ByVal sender As Object, ByVal e As System.EventArgs)

    Try
        Dim result As System.Nullable(Of Boolean) = textDialog.ShowDialog()

        If result = True Then
            Dim fileStream As Stream = textDialog.OpenFile()

            GetStreamAsByteArray(fileStream)
        End If
    Catch ex As Exception

    End Try

End Sub

Private Function GetStreamAsByteArray(ByVal stream As System.IO.Stream) As Byte()

    Dim streamLength As Integer = Convert.ToInt32(stream.Length)

    Dim fileData As Byte() = New Byte(streamLength) {}

    ' Read the file into a byte array
    stream.Read(fileData, 0, streamLength)
    stream.Flush()
    stream.Close()

    Return fileData

End Function

上面的代码为打开的文件生成流长度,但是返回的字节数组在数组中只有 0。 如何生成正确的字节数组?

最佳答案

您的函数不会将字节数组返回给任何对象。这个例子对我有用:

 Dim bytes = GetStreamAsByteArray(textDialog.File.OpenRead)
 MessageBox.Show(bytes.Length.ToString)

关于vb.net - 从流生成字节数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22802119/

相关文章:

python - 将可变大小的字节数组转换为整数/长整数

silverlight - 测试 Silverlight 时如何获得代码覆盖率

Silverlight 在特定时间安排事件

javascript - 如何将数组中的最后 4 个字节转换为整数?

c# - 在 C# 中将字节数组转换为字符串并再次返回

c# - Silverlight 和 icollectionview

.net - 如何覆盖类中属性的 .ToString

c# - 将 Active Directory 属性设置为 "not set"的 .Net 代码

vb.net - 删除 VB.Net 中的 "Invisible"控制字符

vb.net - 使用 GeckoWebBrowser 单击 HTML 按钮下载文件