vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
vb@rchiv Offline-Reader - exklusiv auf der vb@rchiv CD Vol.4  
 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

Fortgeschrittene Programmierung
Re: Datenstring aufbereiten 
Autor: Wöllmi
Datum: 12.07.03 10:39

Hi dbayer,

danke für den Tipp. In leicht modifizierter Form werde ich diesen wohl einsetzen.
Habe noch ne Kleinigkeit übersehen, aber sieh selber:
dim A as Variant
'in sDataSet ist der Zeichenstring128enthalten
A = Split(sDataSet, " ")
 
'vergessenen Steuercode entfernen ;-)
' Woher der mit einmal kommt ist mir bzgl. meiner Rohdaten noch nicht ganz klar
 A(0) = Replace(A(0), Chr$(13), "")
 
'Korrektur, da 0..13 = 14, habe mich da nicht ganz korrekt ausgedrückt sorry      
ReDim info(13)     
 
    N = 0
    For i = 0 To UBound(A) - 1
 
        'mußte ich erweitern, da die Spaces als "Leerfelder" gesplittet  werden
        If A(i) <> " " And A(i) <> "" Then
         info(N) = A(i)
         N = N + 1
       End If
    Next
 
   ' Für CSV , vorher ein Output/Append-File aufmachen
    For i = 0 To N - 2
      'Print #AusgabeFile, info(i) + ",";
    Next
    'Print #AusgabeFile, info(N - 1)
Für die Verkettung der Einzelfelder habe ich auch nen schnellen Ersatz für
sString = sString & ";" bei "vbtec.de" gefunden.
'Classe "Concat ins projekt einfügen
Option Explicit
 
Private Buffer As String
Private BufferLen As Long
Private Pointer As Long
 
'Auf "Leerstring" setzen:
Public Sub Clear()
  Pointer = 1
End Sub
 
'String anhängen:
Public Sub Concat(ByRef Value As String)
  Dim PointerNew As Long
 
  'Benötigten Buffer berechnen:
  PointerNew = Pointer + LenB(Value)
 
  'Ggf. Buffer vergößern:
  If PointerNew > BufferLen Then
    Buffer = Buffer & Space$(PointerNew)
    BufferLen = LenB(Buffer)
  End If
 
  'String passend kopieren:
  MidB$(Buffer, Pointer) = Value
  Pointer = PointerNew
End Sub
 
'Länge des internen Strings:
Public Property Get Length() As Long
  Length = Pointer \ 2
End Property
 
'Inhalt des internen Strings:
Public Property Get Value() As String
  Value = LeftB$(Buffer, Pointer - 1)
End Property
 
'Neues Objekt initialisieren:
Private Sub Class_Initialize()
  Clear
End Sub
Eingesetzt dann so:
Dim cc As Concat
     Set cc = New Concat
'.....
cc.Clear
'101 "x" aneinanderfügen
for i = 0 to 100
 cc.concat "x"
next i
sString = cc.Value
Also nochmals vielen Dank. Bzgl. der Geschwindigkeit werde ich erst Sonntag
Abend zum Test kommen. Es sieht aber schon toll aus. Der Aufbau
des sevDataGrid scheint nun wesentlich schneller zu gehen.

Tschaui
Woellmi

alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Datenstring aufbereiten750Wöllmi11.07.03 23:02
Re: Datenstring aufbereiten460dbayer12.07.03 09:01
Re: Datenstring aufbereiten451Wöllmi12.07.03 10:39
Re: Datenstring aufbereiten530dbayer12.07.03 10:50
Re: Datenstring aufbereiten422Wöllmi12.07.03 11:11

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