[KASI] Mein Speicherungssystem

Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!

Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
  • Nützlicher wäre diese include für:
    string file_get_contents(Path[]);
    int file_get_float(Path[]);
    double file_get_double(Path[]);
    und
    void file_set_contents(Path[],Content[]);
    void file_set_int(Path[],Value);
    void file_set_double(Path[],Value);


    Wenn du verstehst was ich meine :D
    Ich glaube nämlich, dass so niemand diese include wirklich nutzen kann und wird.

    PAWNit gratis nutzen?
    Geschenkcode: 2017VQXPKB8V3KA

    Hier könnte Ihre Werbung stehen.

  • Wenn du verstehst was ich meine :D


    :D trotzdem kann man damit die Standard Dinger machen, Speichern, Auslesen, Zerstören und Erstellen ^^


    Naja, aber ich weiß selber das das nix dolles ist, da ich das in ca. 2 Minuten hier gerade aus Langeweile geschrieben habe :D


    mfg. :rolleyes:

    ast2ufdyxkb1.png


    Leute, lernt scripten und versucht mal lieber etwas selber zu schreiben, als es aus einem GF zu kopieren. :S


  • :D trotzdem kann man damit die Standard Dinger machen, Speichern, Auslesen, Zerstören und Erstellen ^^


    Eben gerade das kann man nicht.

    Code
    k_Create("Test.txt");
    k_SetInt("Test.txt","test_int", 3);
    k_SetInt("Test.txt","test_int", 4);
    k_SetInt("Test.txt","test_int", 5);
    k_SetInt("Test.txt","test_int", 6);


    erzeugt:

    Zitat

    test_int 3 test_int 4 test_int 5 test_int 6

    PAWNit gratis nutzen?
    Geschenkcode: 2017VQXPKB8V3KA

    Hier könnte Ihre Werbung stehen.

  • Leider muss ich dir sagen, dass du das ganz überarbeiten solltest, denn ich habe mir den Code angeguckt und kann dir schonmal sagen, dass du noch einiges dran machen müsstest. Allerdings muss ich sagen, dass du noch beachten müsstest, dass du wascheinlich nicht (auf die schnelle) eine bessere Leistung erziehlen wirst als Y_Less, da er sich mit solchen Sachen auseinander gesetzt hat.


    So zu deinem größten Fehler:

    Code
    stock file_set_contents(Pfad[], text[])
    {
        new File:f;
        if(fexist(Pfad)) f = fopen(Pfad, io_append);
        else f = fopen(Pfad, io_write);
        fwrite(f, text);
        fclose(f);
        return 1;
    }


    Das hier ist ein ernstes Problem. Denn sobald die Datei schon vorhanden sind, werden Strings dazu adiert. Wenn man die 'Speicherung' mehrere male benutzt, hat man die selben Variablen wieder und wieder drinne. Ich bin mir echt nicht sicher, was du dir hierbei gedacht hast.


    - Ausserdem, hast du deine Speicherung massiv limitiert, durch deinen 'Buffer'. Falls jemand eine Datei hat, wo zum Beispiel texte gespeichert werden, ist dein System immernoch Fehlerhaft.


    - Dazu hast du noch 'getint' vergessen.


    Das System ist fehlerhaft, undurchdacht und unfertig. Ich denke, du solltest noch alles von Grund auf überarbeiten. Ausserdem würde ich strtok raushauen und lieber sscanf benutzen, damit kannst du auch sehr einfach und schnell 'getint' und 'getfloats' machen, die deine Leistung noch verbessern könnten.


    Daher, an sich gute Absicht, doch leider bisl zu voreilig.
    2/10


    2 Punkte für die Mühe und die Idee nen neues Filesystem zu schreiben. -8 für fehlerhaft, unvollständig und undurchdachtheit.
    Bin ma gespannt, ob du es durchziehst oder ob du schon aufgiebst.

  • Allerdings muss ich sagen, dass du noch beachten müsstest, dass du wascheinlich nicht (auf die schnelle) eine bessere Leistung erziehlen wirst als Y_Less, da er sich mit solchen Sachen auseinander gesetzt hat.


    You dont say :wacko:


    Denn sobald die Datei schon vorhanden sind, werden Strings dazu adiert.


    Genau das habe ich mir dabei gedacht.
    Leider etwas reproduktiv.


    - Dazu hast du noch 'getint' vergessen.


    Nein, das solltest du nocheinmal die Funktionen durchlesen (auch die //).


    Ausserdem, hast du deine Speicherung massiv limitiert, durch deinen 'Buffer'. Falls jemand eine Datei hat, wo zum Beispiel texte gespeichert werden, ist dein System immernoch Fehlerhaft.


    Ja, weil die Speicherung für Accounts gedacht ist und da ist es eigentlich unüblich das man mehr als 128 Zeichen verwendet :D


    undurchdachtheit


    Ja...habe ich oben schon geschrieben ^^

    ast2ufdyxkb1.png


    Leute, lernt scripten und versucht mal lieber etwas selber zu schreiben, als es aus einem GF zu kopieren. :S

  • Also die Beschränkung der Zeichen auf 128 ist schon etwas doof. Ich meine, wenn man seine Passwörter wie ich hasht, wird der Speicher da schon "voll" sein.
    Und nun ja, die Include ist ja noch etwas fehlerhaft :D


    MFG

    Main: CPU: Intel Core i5-4440 @ 3,10 GHz | CPU-Cooling: Matterhorn -PURE- | RAM: 16GB Crucial Ballistix Sport DDR3-1600 DIMM CL9-9-9-24 |
    Motherboard: ASRock B85M Pro4 | GPU: Sapphire Radeon R9 390X Nitro 8GB GDDR5 |

    SSD: Samsung SSD 840 Evo 500GB | Power Supply: 550 Watt Corsair CS Series Modular 80+ Gold | Case: beQuiet! Silent Base 800


    As I walk through the valley of the shadow of death
    I take a look at my life and realize there's nothin' left.

  • Finde das jettz nicht so unüblich


    Ich hatte da was verwechselt...shit :D


    Was sollte ich mir jetzt angucken?


    Code
    k_Get(Pfad[], Name[]);//Man muss nicht angeben ob es ein Integer ist oder ein String, er gibt es richtig wieder !


    mfg. :thumbup:

    ast2ufdyxkb1.png


    Leute, lernt scripten und versucht mal lieber etwas selber zu schreiben, als es aus einem GF zu kopieren. :S

  • Ja, da aber die meisten Inlcudes auf den Standard Funktionen aufbauen, kann es , logischerweise, nicht schneller sein. Facepalm! (Sofern kein Caching benutzt wird!)

    Wenn es doch nur so einfach wäre eine "Speicher-include" zu bauen, warum hat es denn bisher noch niemand gemacht? :D
    Man kann diese Include eigentlich für nichts nutzen, da weder gecached, noch geupdated wird. Man schreibt jedesmal einen neuen Inhalt in die Datei. Dann kann man auch einfach fwrite benutzen... (Sollte ich was überlesen haben, sorry)
    Dieser Speedtest ist nicht aussagekräftig, da deine Include nicht das kann, was die anderen können. Eigentlich kann sie, so wie ich das sehe, garnichts.

    Ich denke, da bestätigt jemand meine Aussage :p^^

    Chief Technology Officer (CTO)


    Interesse an folgenden Domains?

    fivemp.de - planet-zoo.de

    Jetzt anschreiben :)

  • Ich denke, da bestätigt jemand meine Aussage :p


    Nein.


    Ja, da aber die meisten Inlcudes auf den Standard Funktionen aufbauen, kann es , logischerweise, nicht schneller sein.


    Lese:


    Zitat

    Jetzt überlegen wir mal, du hast oben gesehen, dass meine Include schneller ist als andere, daraus schließen wir, dass trotz des Nutzen dieser Funktion die Systeme sich unterscheiden.


    Lese es von mir aus so oft bis du es verstanden hast :pinch:

    ast2ufdyxkb1.png


    Leute, lernt scripten und versucht mal lieber etwas selber zu schreiben, als es aus einem GF zu kopieren. :S


  • Ich hatte da was verwechselt...shit :D



    Code
    k_Get(Pfad[], Name[]);//Man muss nicht angeben ob es ein Integer ist oder ein String, er gibt es richtig wieder !


    mfg. :thumbup:


    Ach doh, hätte die beschreibung da durchlesen sollen. Habe halt nie mit strtok gearbeitet :pinch:
    Wirst du das ganze nu weiterführen oder lässt du es liegen? Würde mich mal interessieren :love:

  • Entweder Du meinst was anderes als ich, oder Du hast vom Programmieren keine Ahnung. Nun gut, lassen wir das mal. ;)

    Chief Technology Officer (CTO)


    Interesse an folgenden Domains?

    fivemp.de - planet-zoo.de

    Jetzt anschreiben :)

  • Wirst du das ganze nu weiterführen oder lässt du es liegen? Würde mich mal interessieren :love:


    Verstehe den Grund für dein Interesse zwar nicht, trotzdem habe ich totale langeweile und schreibe das grade um..^^

    ast2ufdyxkb1.png


    Leute, lernt scripten und versucht mal lieber etwas selber zu schreiben, als es aus einem GF zu kopieren. :S

  • Also, ich habe das jetzt mal so gemacht, dass sich das ersetzt :whistling:


    So mit meinem Speedtest komme ich auf 936ms...und damit sind die anderen also schneller ^^


    Somit lasse ich es jetzt gut sein und tendiere zu y_ini ;)


    mfg. :thumbup:

    ast2ufdyxkb1.png


    Leute, lernt scripten und versucht mal lieber etwas selber zu schreiben, als es aus einem GF zu kopieren. :S