[VisualBasic] Bestimmten Wert suchen

Dieses Thema im Forum "Programmierung & Entwicklung" wurde erstellt von micropower, 7. August 2008 .

  1. 7. August 2008
    Bestimmten Wert suchen

    Hab da mal ne Frage und zwar?
    Kann man mit VB in einer Datei einen bestimmten Wert suchen und diesen dann auch sinnvoll ändern.

    Code:
    config
    {
    StrategicPart
    {
     actualEra 3
     actualFinance 4167616
     actualTime
     {
     className "Time"
    ....
    }
    ich würde gerne den Wert ändern "actualFinance 4167616" wie soll ich das anstellen?
     
  2. 7. August 2008
    AW: Bestimmten Wert suchen

    Code:
    replace(variablemitdemzeugs, "actualFinance 1014167616", "actualFinance ...")
    ggf mit api oder tlb dopen und selbst schreiben
     
  3. 7. August 2008
    AW: Bestimmten Wert suchen

    Mit InStr oder InStrRev die Position ermitteln und dann bis zum nächsten Leerzeichen ersetzen ..
    Replace wird nicht funktionieren, da die Werte ja variabel sein sollen!
     
  4. 8. August 2008
    AW: Bestimmten Wert suchen

    joa stimmt habs verpeilt

    Code:
    Dim Long01 As Long
    Dim Long02 As Long
    
    Long01 = InStr(INPUTSTRING, "actualFinance")
    
    If Long01 > 0 Then
     Long01 = Long01 + Len("actualFinance") 'Veranschaulichung
     Long02 = InStr(INPUTSTRING, vbCrLf, Long01)
    
     If Long02 > 0 Then
     INPUTSTRING = Mid$(INPUTSTRING, 1, Long01) & NEWVALUE & Mid$(INPUTSTRING, Long02)
     End If
    End If
    
    fallsde mehrere auf einmal verändern willst erst bei vbcrlf splitten und dann zambasteln

    edit: kanns sein dass actualFinance mehrmals vorkommt? poste mal die komplette cfg und gib mehr infos
     
  5. 8. August 2008
    AW: Bestimmten Wert suchen

    Boa erstmal Danke dafür werd das mal reinbasteln bei mir.

    ja actual kommt mehrmals vor, aber ich will nur diesen einen Wert verändern.
     
  6. 8. August 2008
    AW: Bestimmten Wert suchen

    naja wenn das actual das du verändern willst an erster stelle steht isses i.o. ansonsten wirds noch weng aufwendiger
     
  7. 8. August 2008
    AW: Bestimmten Wert suchen

    Könntest auch RegularExpressions nutzen.

    Aber die Methode die Hardwarehunger beschreibt ist verständlicher.

    mfg nash
     
  8. 10. August 2008
    AW: Bestimmten Wert suchen

    Code:
    Dim t As String
    
    t = input(LOF(1), #1)
    
    suche = "actualFinance"
    
    CurrentX = 700
    CurrentY = 1000
    Print Val(Mid$(t, InStr(1, t, suche, vbTextCompare) + Len(suche)))
    
    Close #1
    Habe das so gemacht. Bei der Variante von dir Hardwarehunger komm ich nicht ganz klar.
    Habe dann ein Inputbox gebastelt und wollte so den Wert ändern, irgendwie klappt das nicht ganz.
    Kann mir da einer helfen?
     
  9. 10. August 2008
    AW: Bestimmten Wert suchen

    val ist nachdem was ich jetzt gesehen hab unnötig

    instr hat by default vbtextcompare, also kannste das weglassen

    currentx und currenty hättste nich posten brauchen, es sei denn sie beziehen sich auf suchen, tun sie aber hier nicht - denkfehler?

    ggf hast du open und get vergessen

    du verwendest print falsch

    vorschlag - ungetestet:
    Code:
    Public Sub Configfile_Value_Set(ByRef Filename As String, ByRef Value As String, ByRef Data As String)
     Dim Long01 As Long
     Dim Long02 As Long
     Dim Long03 As Long
     Dim String01 As String
     
     'checken mit dir ob vorhanden
     
     Long01 = FreeFile
     
     Open Filename For Binary As #Long01
     String01 = Space$(LOF(Long01))
     
     Get #Long01, , String01
     
     Long02 = InStr(String01, Value)
     
     If Long02 > 0 Then
     Long02 = Long02 + Len(Value)
     Long03 = InStr(String01, vbCrLf, Long02)
     
     If Long03 > 0 Then
     String01 = Mid$(String01, 1, Long02) & Data & Mid$(String01, Long03)
     End If
     End If
     
     Put #Long01, , String01
     Close #Long01
    End Sub
    
    fehlerabfrage ob configfile vorhanden ist fehlt - ich machs über fileapi, desshalb wollt ichs jetzt net zu kompliziert machen, der dir befehl sollte aber helfen.

    btw: sei froh das mir langweilig ist :]
     
  10. Video Script

    Videos zum Themenbereich

    * gefundene Videos auf YouTube, anhand der Überschrift.