VB-Code:
HTML Code:
Public Function ReadLine(ByVal sFile As String, _
Optional ByVal nLine As Long = 1) As String
Dim sLines() As String
Dim oFSO As Object
Dim oFile As Object
' Fehlerbehandlung aktivieren
On Error GoTo ErrHandler
' Verweis auf das FileSystemObject erstellen
oFSO = CreateObject("Scripting.FileSystemObject")
' Existiert die Datei überhaupt?
If oFSO.FileExists(sFile) Then
' Datei öffnen
oFile = oFSO.OpenTextFile(sFile)
' Alles lesen und in Array zerlegen
sLines = Split(oFile.ReadAll, vbCrLf)
' Datei schließen
oFile.Close()
Select Case Math.Sign(nLine)
' (nLine > 0)
Case 1
' n-te Zeile von vorne beginnend
ReadLine = sLines(nLine - 1)
' (nLine < 0)
Case -1
' n-te Zeile von hinten beginnend
ReadLine = sLines(UBound(sLines) + nLine + 1)
End Select
End If
ErrHandler:
' Objekte zerstören
oFile = Nothing
oFSO = Nothing
End Function
C# Code nach Converter:
HTML Code:
public string ReadLine(string sFile, long nLine = 1)
{
string functionReturnValue = null;
string[] sLines = null;
object oFSO = null;
object oFile = null;
// Fehlerbehandlung aktivieren
// ERROR: Not supported in C#: OnErrorStatement
// Verweis auf das FileSystemObject erstellen
oFSO = Interaction.CreateObject("Scripting.FileSystemObject");
// Existiert die Datei überhaupt?
if (oFSO.FileExists(sFile)) {
// Datei öffnen
oFile = oFSO.OpenTextFile(sFile);
// Alles lesen und in Array zerlegen
sLines = Strings.Split(oFile.ReadAll, Constants.vbCrLf);
// Datei schließen
oFile.Close();
switch (Math.Sign(nLine)) {
// (nLine > 0)
case 1:
// n-te Zeile von vorne beginnend
functionReturnValue = sLines[nLine - 1];
break;
// (nLine < 0)
case -1:
// n-te Zeile von hinten beginnend
functionReturnValue = sLines[Information.UBound(sLines) + nLine + 1];
break;
}
}
ErrHandler:
// Objekte zerstören
oFile = null;
oFSO = null;
return functionReturnValue;
}
mfg. Showii






