vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Erstellen von dynamischen Kontextmen?s - wann immer Sie sie brauchen!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2024
 
zurück

In diesem Forum haben Sie die Möglichkeit Kommentare, Fragen und Verbesserungsvorschläge zu den im vb@rchiv gelisteten Tipps und Workshops zu posten.

Hinweis:
Ein neues Thema kann immer nur über die jeweilige Tipps & Tricks bzw. Workshop Seite eröffnet werden!

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

Fragen zu Tipps & Tricks und Workshops im vb@rchiv
Tipp 1548: Bestimmte Zeile aus einer Textdatei auslesen II 
Autor: EllyD
 Tipp anzeigenDatum: 05.02.09 19:58

Ich bekomm da immer den Fehler:
Warnung 1 Die ReadLine-Funktion gibt nicht für alle Codepfade einen Wert zurück. Wenn das Ergebnis verwendet wird, kann zur Laufzeit eine Nullverweisausnahme auftreten. C:\Users\Elly D\AppData\Local\Temporary Projects\WindowsApplication1\Form1.vb 30 5 WindowsApplication1




Public Class Form1
 
    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As _
      System.EventArgs) Handles MyBase.Load
 
    End Sub
    Public Function ReadLine(ByVal sFile As String, _
       ByVal nLine As Long) As String
 
        Dim sLines() As String
        Dim oFSO As Object
        Dim oFile As Object
 
        ' 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()
 
            ReadLine = sLines(nLine - 1)
        End If
    End Function
End Class
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Bestimmte Zeile aus einer Textdatei auslesen II 
Autor: ModeratorDieter (Moderator)
Datum: 05.02.09 20:48

Der Code bezieht auch auf VB6 und nicht auf VB.NET.

Ändere die Funktion wie folgt und der .NET Compiler mekert nicht mehr:
Public Function ReadLine(ByVal sFile As String, _
  ByVal nLine As Long) As String
 
  Dim sLines() As String
  Dim oFSO As Object
  Dim oFile As Object
 
  ' 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()
 
    Return sLines(nLine - 1)
  Else
    Return ""
  End If
End Function
Noch besser wäre es jedoch, wenn Du nicht auf COM-Objekte zurückgreifst, sondern die im .NET Framework enthaltenen Klassen verwenden würdest (Stichwort My.Computer.FileSystem.ReadAll)

_________________________
Professionelle Entwicklerkomponenten
www.tools4vb.de

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Bestimmte Zeile aus einer Textdatei auslesen II 
Autor: EllyD
Datum: 05.02.09 21:25

Sry aber ich bin blutiger Anfänger, was VB angeht, also ich hab VB08.

Was meinst du damit???
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Bestimmte Zeile aus einer Textdatei auslesen II 
Autor: ModeratorDieter (Moderator)
Datum: 06.02.09 06:49

Damit meine ich, dass man das unter VB.NET wie folgt lösen könnte, ohne auf COM-Objkete zugreifen zu müssen:
''' <summary>
''' Liest eine bestimmte Zeile aus einer Textdatei
''' </summary>
''' <param name="filename">vollständiger Pfad zur Datei</param>
''' <param name="line">Zeilennummer</param>
''' <returns>Inhalt der Zeile oder bei Fehler einen Leerstring</returns>
Public Function ReadLine(ByVal filename As String, _
  ByVal line As Integer) As String
 
  Try
    Dim lines As String() = My.Computer.FileSystem.ReadAllText( _
      filename, System.Text.Encoding.Default).Split(vbCrLf)
    Return lines(line - 1)
  Catch ex As Exception
    Return ""
  End Try
End Function

_________________________
Professionelle Entwicklerkomponenten
www.tools4vb.de

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Bestimmte Zeile aus einer Textdatei auslesen II 
Autor: promsn
Datum: 23.02.11 15:59

Hallo,

die Funktion klappt Prima. Gibt es eventl. eine Funktion Writeline?

VG
promsn
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Sie sind nicht angemeldet!
Um einen neuen Beitrag schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2024 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel