Ergebnis 1 bis 9 von 9

Thema: Leeren inhalt einer Table automatisch loeschen

  1. #1

    Standard Leeren inhalt einer Table automatisch loeschen

    also, ich hab das problem, dass wenn ich in meiner table
    Code:
    1	Droge
    2	Rabid
    3	Turk
    4	Killa
    5	
    6	Sport
    zB ein leeres feld habe, funktioniert die funktion die mit der table arbeitet nicht mehr.

    wie kann ich es also machen, dass wenn ein feld der table leer ist, dieser automatisch geloescht wird?
    Zitat Zitat von Stargate75
    ich weis das war ich scheise was ich gemacht aber aber das ist das einzige forum wo cool ist und auf deutsch

  2. #2
    Avatar von Lucid
    Registriert seit
    15.12.2006

    Standard AW: Leeren inhalt einer Table automatisch loeschen

    Lua Code:
    1. gegenstaende = {}
    2. gegenstaende["klappstuhl"] = 16
    3. gegenstaende["tisch"] = 32
    4. gegenstaende["hocker"] = 64
    5. gegenstaende[""] = 128
    6. gegenstaende["sessel"] = nil
    7. gegenstaende["sofa"] = 512
    8.  
    9. function gegenstaende_zeigen()
    10. 	for k, v in pairs(gegenstaende) do
    11. 		if (k ~= nil and k ~= "" and v ~= nil and v ~= "") then
    12. 			Msg("Wir haben " .. v .. " mal den " .. k)
    13. 		end
    14. 	end
    15. end

    Zitat Zitat von output
    Wir haben 16 mal den klappstuhl
    Wir haben 32 mal den tisch
    Wir haben 64 mal den hocker
    Wir haben 512 mal den sofa
    das sofa, ich weiss...

  3. #3
    Avatar von Scarecrow
    Registriert seit
    15.12.2005
    Ort
    Nordrhein-Westfalen

    Standard AW: Leeren inhalt einer Table automatisch loeschen

    Zitat Zitat von Stoned Beitrag anzeigen
    also, ich hab das problem, dass wenn ich in meiner table
    Code:
    1	Droge
    2	Rabid
    3	Turk
    4	Killa
    5	
    6	Sport
    zB ein leeres feld habe, funktioniert die funktion die mit der table arbeitet nicht mehr.

    wie kann ich es also machen, dass wenn ein feld der table leer ist, dieser automatisch geloescht wird?
    Solche Fehler können sehr fatal sein, wenn sie serverseitig sind und mit Daten arbeiten, die jeder Spieler manipulieren könnte (indem er z.B. in seinen Namen nur Leerzeichen macht).

    PS: Fatal in dem Sinne, dass jeder das Script lahmlegen könnte.
    Welches ist die Höchstgeschwindigkeit einer unbeladenen Schwalbe?

  4. #4

    Standard AW: Leeren inhalt einer Table automatisch loeschen

    es ist nur cl :V

    hier ma was von mir, aber es loescht nur 1zeile, dann muss ich es neu aufrufen usw, koennte man es nicht mit ner loop alle loeschen lassen ?

    Lua Code:
    1. function deleteblank()
    2. 	deltable =	string.Explode("\n",datasave)
    3. 	for k,del in pairs(deltable) do
    4. 		if (del == nil or del == "") then
    5. 			table.remove(deltable, k)
    6. 		end
    7. 		print(k,del)
    8. 	end
    9. 	file.Write("fixed_table.txt", table.concat( deltable, "\n" ) )
    10. end
    aus
    Code:
    ...
    4	Killa
    5
    6
    7	
    8	Sport
    wird
    Code:
    ...
    4	Killa
    5
    6	
    7	Sport
    Geändert von Stoned (04.08.2008 um 21:46 Uhr)
    Zitat Zitat von Stargate75
    ich weis das war ich scheise was ich gemacht aber aber das ist das einzige forum wo cool ist und auf deutsch

  5. #5

    Standard AW: Leeren inhalt einer Table automatisch loeschen

    Wenn du 'n ganzen Inhalt aus einem Table löschen willst, dann brauchst
    nur

    Lua Code:
    1. table.remove( mytable )

    machen...

  6. #6

    Standard AW: Leeren inhalt einer Table automatisch loeschen

    lol ne q.q

    ich will die leeren felder automatisch loeschen ? zeigt doch das obrige beispiel :V
    Zitat Zitat von Stargate75
    ich weis das war ich scheise was ich gemacht aber aber das ist das einzige forum wo cool ist und auf deutsch

  7. #7

    Standard AW: Leeren inhalt einer Table automatisch loeschen

    Wenn es sich doch hier um Strings handelt,könnte er nicht einfach :

    Lua Code:
    1. for k,v in pairs(table) do
    2.   if v == "" or v == nil then 
    3.   table.remove(table,k)
    4.   end
    5. end

  8. #8

    Standard AW: Leeren inhalt einer Table automatisch loeschen

    das hab ich ja ...

    aber es loescht immer eins nach dem andren und nicht alle ...
    Zitat Zitat von Stargate75
    ich weis das war ich scheise was ich gemacht aber aber das ist das einzige forum wo cool ist und auf deutsch

  9. #9

    Standard AW: Leeren inhalt einer Table automatisch loeschen

    Dann mach halt:

    Lua Code:
    1.  
    2. for i=1, #mytable do // #mytable zählt wie viel Einträge im Table sind
    3.     if mytable[i] == "" or mytable[i] == nil then
    4.         table.remove( mytable, i )
    5.     end
    6. end

  10. Folgender Benutzer sagt Danke zu Pac_187 für den nützlichen Beitrag:


Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •