2014-04-02 33 views
1

我想从“.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的在数组中。 我怎样才能生成正确的字节数组?

回答

0

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

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

textDialog.File.OpenRead不可用 – Anish

+0

我,你使用的是什么版本运行在Silverlight的测试? – OneFineDay

+0

'textDialog'是一个'OpenFileDialog'吗? – OneFineDay