0

我需要将一段代码从 VB 转换为 C#。我应该用什么来代替 FileSystemObject 和 TextStream?

下面的代码所做的是它读取目录中已经存在的文件并将文件的内容添加到字段中。

Private Sub Read_abc_File()
    Dim FileSystem As FileSystemObject
    Dim abcFile As TextStream
    Dim abcLine As String, abcSection As String
    Dim abcFilename As String
    Const Read As Integer = 1

    abcFilename = "abc.txt"


    Set FileSystem = New FileSystemObject

    If Not FileSystem.FileExists(abcFilename) Then
        FileSystem = Null
        Exit Sub
    End If

    Set abcFile = FileSystem.OpenTextFile(abcFilename, Read, False)

    Do While abcFile.AtEndOfStream <> True
        abcLine = abcFile.ReadLine

        If abcLine > " " Then
            If Left$(abcLine, 1) = "[" Then
                abcSection = abcLine
            Else
                Select Case abcSection
                    Case "[Datafiles]"
                        DataFilename.AddItem abcLine
                    Case "[Locations]"
                        Location.AddItem abcLine
                    Case "[Formats]"
                        Format.AddItem abcLine
                    Case "[Categories]"
                        Category.AddItem abcLine
                End Select
            End If
        End If            
    Loop

    abcFile.Close
    Set abcFile = Nothing
    Set FileSystem = Nothing
End Sub

任何建议/答案表示赞赏。

谢谢!

4

1 回答 1

0

这是一个让你开始的代码片段,我认为你应该能够完成这项工作。

使用系统;
使用 System.IO;

静态无效主要(字符串 [] 参数)
{
    字符串文件名 = "abc.txt";

    if (!File.Exists(fileName))
        返回;

    使用 (FileStream 文件 = File.OpenRead(fileName))
    使用 (StreamReader reader = new StreamReader(file))
    {
        而(!reader.EndOfStream)
        {
            字符串行 = reader.ReadLine();
        }
    }
}
于 2012-11-15T07:22:19.580 回答