vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
sevDataGrid - Gönnen Sie Ihrem SQL-Kommando diesen krönenden Abschluß!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

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

Visual-Basic Einsteiger
Done Ein hight-Speed-Scanner  
Autor: unbekannt
Datum: 19.10.02 16:02

Hi Allz,

sorry - hatte heute noch andere Arbeit
 
Private Declare Function ScanFile Lib "vbex32.dll" Alias _
   "VBSTRINGINFILE" _
   (sQuellFile As String, sFind As String, _
    sDelim As String, ByVal nStep As Long) As String
 
Private Const MAXSTEP As Long = 1000000
 
Private Const SCAN_ERR_BADPATH = &H0
Private Const SCAN_ERR_SUCCESS = &H1
Private Const SCAN_ERR_NOQFILEFOUND = &H2
Private Const SCAN_ERR_CORRUPTFILE = &H3
Private Const SCAN_ERR_NOTFOUND = &H4
Private Const SCAN_ERR_NOZFILE = &H5
 
Private Sub Form_Load()
   SplitInFile "C:\Test.TXT", "C:\Test1.TXT", "s="
End Sub
 
Private Function SplitInFile(sQuellFile As String, _
                             sZielFile As String, _
                             sFind As String) As Long
 
      Dim nFileLen As Long, nMax As Long, i As Long, n As Long
      Dim sScan As String
      Dim vErg As Variant
      Dim f1 As Integer, f2 As Integer
 
      ' Quelldatei prüfen und Länge ermitteln
      On Error Resume Next
      If Dir(sQuellFile) = "" Then
          If Err.Number > 0 Then
               SplitInFile = SCAN_ERR_BADPATH
               Exit Function
          End If
          SplitInFile = SCAN_ERR_NOQFILEFOUND
          Exit Function
      End If
      nFileLen = FileLen(sQuellFile)
 
      ' Stepprate für ScanFile ermitteln
      If nFileLen = 0 Then
          SplitInFile = SCAN_ERR_CORRUPTFILE
          Exit Function
      End If
      If (nFileLen \ MAXSTEP) > 0 Then
          nMax = MAXSTEP
      Else
          nMax = nFileLen
      End If
 
      ' QuelleFile scannen
      sScan = ScanFile(sQuellFile, sFind, "&*&", nMax)
      If Len(sScan) < 1 Then
          SplitInFile = SCAN_ERR_NOTFOUND
          Exit Function
      End If
 
      ' sScan-String nach Muster &*& splitten
      vErg = Split(sScan, "&*&")
      If UBound(vErg) = 0 Then
         SplitInFile = SCAN_ERR_NOTFOUND
         Exit Function
      End If
 
      ' Quell- und Zieldatei öffnen
      f1 = FreeFile
      Open sZielFile For Output As #f1
      If Err.Number > 0 Then
           SplitInFile = SCAN_ERR_NOZFILE
           Exit Function
      End If
      f2 = FreeFile
      Open sQuellFile For Binary As #f2
 
      ' Evtl. FileHeader überspringen
      If Val(vErg(0)) > 1 Then sScan = Input(Val(vErg(0)) - 1, #f2)
 
      ' Und los geht's
      For i = 0 To UBound(vErg)
          n = Val(vErg(i + 1)) - Val(vErg(i))
          sScan = Input(n, #f2)
          Print #f1, sScan
      Next
 
      ' Aufräumen
      Close #f2, #f1
      Erase vErg
      SplitInFile = SCAN_ERR_SUCCESS
End Function
0
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
datei gescheit auslesen172Thomas P.18.10.02 18:45
Re: datei gescheit auslesen341unbekannt18.10.02 18:49
Re: datei gescheit auslesen87Thomas P.18.10.02 18:53
Re: datei gescheit auslesen366unbekannt18.10.02 19:03
Re: datei gescheit auslesen84Thomas P.18.10.02 19:08
Re: datei gescheit auslesen70Thomas P.18.10.02 20:35
Re: datei gescheit auslesen350unbekannt18.10.02 20:42
Re: datei gescheit auslesen75Thomas P.18.10.02 20:44
Re: datei gescheit auslesen400CCE19.10.02 08:36
Done Ein hight-Speed-Scanner 455unbekannt19.10.02 16:02
Re: datei gescheit auslesen69Thomas P.20.10.02 20:27
Re: datei gescheit auslesen320unbekannt20.10.02 20:31
Re: datei gescheit auslesen69Thomas P.20.10.02 20:37
Re: datei gescheit auslesen319unbekannt20.10.02 20:51
Re: datei gescheit auslesen71Thomas P.20.10.02 20:54

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 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