Datei Converter (einfach,schnell)



  • Ok ich habe zwar kein echtes Problem ,sondern suche eher verbesserungsvorschläge.
    Mein Auftrag ist simpel:
    C++ / MFC Anwendung die Datei A öffnet und alle 0x0a durch
    0x03B,0x07A,0x0a,0x0d (hintereinander)ersetzt.

    So es geht auch und bei einer datei die ca. 240kb groß ist brauch ein vergleichbares VB tool ca. 10minuten...hier ist der wichtige Teil

    long lng_DateiLaenge = xQuell.GetLength(); 
    long lng_Position = 0;
    BYTE buffer[1];
    BYTE Z[4];
    Z[0] = 0x03B;Z[1] = 0x07A;Z[2] = 0x0a;Z[3] = 0x0d;
    
    while (lng_Position < lng_DateiLaenge)
    {
        ::system("cls"); 
        cout << 100 / lng_DateiLaenge * lng_Position << endl;
        cout << "%" << endl;
        lng_Position  = lng_Position  + (long) xQuell.Read(buffer,1);
        if(buffer[0] == 0x0A)
        {
                xZiel.Write(Z,4);       
        }
        else
    
            xZiel.Write(buffer,1); 
        }
    }
        xQuell.Close();
        xZiel.Close();
    

    also ich mir sicher es giebt ne menge zu verbessern um die geschwindigkeit zu erhöhen.Is Klar das xQuell und xZiel beides CFile objecte sind und auch nicht umbedingt eine neue datei erstellt werden muss...wenn jemand weiß wie ich die vorherige einfach 'editieren' kann ohne halt alles in xZiel zu schreiben bitte erzählt mir



  • sorry bei else fehlt ne klammer und der system teil um die Prozent anzuzeigen ist auch nur unsinn,der nicht da sein muss



  • Ist das ein Crack Programm?



  • ahhh sorry LOL jetzt habe ich das mal ohne system und cout durchlaufen lassen und dauert nur wenige sekunden...SORRY keine weiteren Verbesserungen nötig

    KOMMT NIE WIEDER VOR

    *ich trottel*


Anmelden zum Antworten