Funnktionsfehler in_Array2D_DeleteRowCol() beheben

  • Spoiler anzeigen
    [autoit]


    Func _Array2D_DeleteRowCol(ByRef $aArray, $iIndex, $sWhat = "Row")
    Local $iUB_1, $iUB_2

    [/autoit] [autoit][/autoit] [autoit]

    $iUB_1 = UBound($aArray, 1)
    $iUB_2 = UBound($aArray, 2)
    If $sWhat = "row" Then
    For $i = $iIndex To $iUB_1 - 2
    For $j = 0 To $iUB_2 - 1
    $aArray[$i][$j] = $aArray[$i + 1][$j]
    Next
    Next
    ReDim $aArray[$iUB_1 - 1][$iUB_2]
    Else
    For $i = 0 To $iUB_1 - 1
    For $j = $iIndex To $iUB_2 - 2
    $aArray[$i][$j] = $aArray[$i][$j + 1]
    Next
    Next
    ReDim $aArray[$iUB_1][$iUB_2-1]
    EndIf
    EndFunc ;==>_Array2D_DeleteRowCol

    [/autoit]

    Kann mir jemand den fehler beheben, dass diese Funktion das ergebnis immer 2D ausspuckt, obwohl es bei _ArrayDisplay 1-D ist?


    EDIT BugFix:
    Es ist eine bodenlose Frechheit, was du dir hier erlaubst! Du hattest hier ein Problem zu einer Funktion von name22 (_FileListRekursiv) gepostet. Jetzt hast du Überschrift und Code ausgetauscht, sodass unsere Antworten geradezu lächerlich wirken!
    Das betrachte ich als persönlichen Affront. Du bist ab sofort auf meiner Blacklist!

    Lebe munter, lebe froh
    wie das Bärchen Haribo,
    das in seiner Tüte saß
    und die andern Bärchen fraß ;D

    4 Mal editiert, zuletzt von BugFix (28. März 2011 um 19:58)

  • Hallo xXMurmelkotzeXx,

    herzlich willkommen im Forum und viel Spass mit AutoIt.

    Hier kannst du dir die deutsche Hilfe herunterladen.
    Hier gibt es ein AutoIt-Tutorial: http://wiki.autoit.de/wiki/index.php/TutorialSehr hilfreich ist auch das Buch von peethebee

    Falsches Forum, entweder du postet dies im Thema des Authors als Bugmeldung oder im Forum Hilfe und Unterstützung.

    PS.: Nimm Rekursive FileList von Oscar da bin ich mir sicher dass es funktioniert.

    @Mod/Admin bitte verschieben,

    danke autoBert

    Einmal editiert, zuletzt von autoBert (27. März 2011 um 23:24)

    • Offizieller Beitrag

    Kann mir jemand den fehler beheben, dass diese Funktion das ergebnis immer 2D ausspuckt, obwohl es bei _ArrayDisplay 1-D ist?


    ?( Diese Funktion wird dir niemals ein 2D-Array zurückgeben, wie kommst du denn dadrauf?
    In der Funktion wird ein 1D-Array mit den gefundenen Dateien/Ordnern befüllt und dann zurückgegeben. Dort findet nirgendwo eine wundersame Wandlung zu einem 2D-Array statt. ^^


  • ?( Diese Funktion wird dir niemals ein 2D-Array zurückgeben, wie kommst du denn dadrauf?
    In der Funktion wird ein 1D-Array mit den gefundenen Dateien/Ordnern befüllt und dann zurückgegeben. Dort findet nirgendwo eine wundersame Wandlung zu einem 2D-Array statt. ^^

    ööhm Fehlercode bei _ArrayToString kommt immer "Die variable ist kein 1-D Array..."

    Lebe munter, lebe froh
    wie das Bärchen Haribo,
    das in seiner Tüte saß
    und die andern Bärchen fraß ;D

  • und nomma ne frage: was iss hier falsch?

    Spoiler anzeigen
    [autoit]

    Func IniReadSection1D($s_Filename, $s_Section)
    $aIniReadSection2D = IniReadSection($s_Filename, $s_Section)
    If @error Then
    $error = 0
    Else
    $error = 1
    EndIf
    $a = UBound($aIniReadSection2D)
    Dim $aIniReadSection1D[1] = [$a]
    _ArrayDisplay($aIniReadSection1D)
    For $i = 1 To $a
    ReDim $aIniReadSection1D[$aIniReadSection2D[$i][0]]
    Next
    If $error = 1 Then
    Return $aIniReadSection1D
    Else
    Return $error
    EndIf
    EndFunc ;==>IniReadSection1D

    [/autoit]

    da iss irgendwie ein fehler mit dem format von $-2D

    Lebe munter, lebe froh
    wie das Bärchen Haribo,
    das in seiner Tüte saß
    und die andern Bärchen fraß ;D

    6 Mal editiert, zuletzt von xXMurmelkotzeXx (28. März 2011 um 13:59)

    • Offizieller Beitrag
    Spoiler anzeigen
    [autoit]

    Func IniReadSection1D($s_Filename, $s_Section)
    $aIniReadSection2D = IniReadSection($s_Filename, $s_Section)
    If @error Then Return SetError(1, 0, 0)
    Local $a = UBound($aIniReadSection2D)
    Local $aIniReadSection1D[$a]
    $aIniReadSection1D[0] = $aIniReadSection2D[0][0]
    For $i = 1 To $a - 1
    $aIniReadSection1D[$i] = $aIniReadSection2D[$i][1]
    Next
    Return $aIniReadSection1D
    EndFunc

    [/autoit]
  • Zitat

    ööhm Fehlercode bei _ArrayToString kommt immer "Die variable ist kein 1-D Array..."


    Ähm ist es dann vielleicht ein String und kein Array und kannst Dir dann das Konvertieren sparen?
    Nur weil es kein 1d Array ist, muss es ja nicht zwangsläufig 2d sein :)

    Achtung Anfänger! :whistling:

    Betrachten des Quellcodes auf eigene Gefahr, bei Übelkeit,Erbrechen,Kopfschmerzen übernehme ich keine Haftung. 8o

  • ich kanns ja mit _ArrayDisplay() Anschaun, iss ein normales 1-D Array ... eigentlich

    Lebe munter, lebe froh
    wie das Bärchen Haribo,
    das in seiner Tüte saß
    und die andern Bärchen fraß ;D

  • Hallo xXMurmelkotzeXx,

    warum hast du in deinem Eröffnungspost die Überschrift und auch das Skript ausgetauscht. Im Ursprungspost war ein Skript von name22 es handelte sich um rekursive Dateisuche.
    Nach dem editieren ist der Thread total entstellt meine und BugFix Antwort wirken dadurch lächerlich.

    Wenn du dieses noch öfters machst wird dir wohl niemand mehr helfen, denn durch deine Sinn entstellenden Edits liest sich das später so als hätten die dir Helfenden keine Ahnung. Gut wer sich in diesem Forum ein bischen auskennt kann das selber besser beurteilen.

    mfg autoBertt

    • Offizieller Beitrag

    Der hat einfach willkührlich einen Teil des Codes aus diesem Thread genommen, [ offen ] Spalte aus Array löschen.

    Zitat von xXMurmelkotzeXx 16:02

    wow thx für die Funktion ich hatte nämlich das gleiche Problem ;DD


    Ich finde das ist eine Frechheit, erst beschäftigt er das Forum mit unmöglichen Behauptungen und dann will er seine Unfähigkeit vertuschen :cursing::thumbdown: