0

我是 vb.net 的新手。我有很多使用 vb 6 的经验。我想知道的是如何替换文件系统对象。具体来说,我想使用文本流数组。我将如何在 vb.net 中编写以下内容

为简单起见,我假设我有一个 1 字节长的文本文件,并且只是从 0 到 9 的一系列重复 #。我希望任何有 1 的记录都转到 tsout(1) , 2 到 tsout(2) 等...

dim fso as new filesystemobject, tsIN as textstream, tsOut(10) as textstream
dim lineIN, i
set tsin = fso.opentextfile("C:\input.txt",forreading,false)
for i = 1 to 10
 set tsout(i) = fso.createtextfile("C:\output" & i & ".txt",true)
next
do while not tsin.atendofstream
 linein = mid(tsin.readline,1,1)
 tsout(linein).writeline(linein)
loop
for i = 1 to 10
 tsout(i).close
next
tsin.close
4

1 回答 1

0

使用System.IO.StreamWriters 和System.IO.StreamReaders:

Using in As New StreamReader("C:\input.txt")
    Dim out(9) As StreamWriter

    For i As Integer = 0 To 9
        out(i) = New StreamWriter("C:\output" & i & ".txt")
    Next

    While in.Position < in.Length
        Dim l As Integer = Integer.Parse(in.ReadLine().Substring(1, 1))

        out(l).WriteLine(l.ToString())
    End while

    For i As Integer = 0 To 9
        out(i).Close()
        out(i).Dispose()
    Next
End Using

注意:这假定Imports System.IO在文件的开头或项目范围内。

于 2012-04-11T23:18:19.740 回答