2014-09-23 47 views
0

我正在使用VB.Net(.Net 4.0)在VS 2012環境中工作。如何將字符串變量轉換爲System.IO.FileStream對象?

我正在讀取.csv文件並將數據加載到字符串變量中。我的語法工作正常。我必須這樣做,只是爲了避免在行尾嵌入回車(CR)。

現在,我試圖將該變量轉換爲System.IO.FileStream對象。

Dim reader As StreamReader = New System.IO.StreamReader(File.OpenRead("D:\CSV\Test.csv")) 
     Dim listA As New List(Of String)() 
     Dim listB As New List(Of String)() 
     Dim s As String = "" 
     While Not reader.EndOfStream 
      Dim line As String = reader.ReadLine() 
      Dim values As String() = line.Split(";"c) 
      listA.Add(values(0)) 
      s = s + line + Chr(10) 
     End While 

我具有對System.IO.FileStream對象傳遞到另一個現有功能,其轉換成字節數組。

Private Function getEncodeType(ByVal theFile As System.IO.FileStream) As System.Text.Encoding 

' This function converts the File Stream to Byte. 
' Function works fine. 

End Function 

如何將字符串轉換爲System.IO.FileStream對象?

+1

不要標記你的問題C#如果它與C#無關。 – jmcilhinney 2014-09-23 03:10:51

+0

使用'StringBuilder'連接CSV中的行,因爲字符串是不可變的。否則,如果這是VB.Net,那麼你使用'&'而不是'+'連接行...... – 2014-09-23 03:16:14

回答

2

沒有轉換。您創建一個FileStream對象,當您這樣做時,您提供了包含文件路徑的String。你已經在做,在這裏:

File.OpenRead("D:\CSV\Test.csv") 

如果你想使用FileStream再然後,就像任何對象或值,將其分配給一個變量,然後使用該變量。