++ Programmierung, Wie lösche und umbenenne ich Dateien



  • Hallo !

    Ich hab ne Frage zu C++

    Ich möchte Dateien löschen bzw. umbenennen.

    Was muss ich da in die "Main"eingeben ?

    Meine Main sieht noch so aus:

    // Dateien.cpp : Definiert den Einsprungpunkt für die Konsolenanwendung.
    //

    #include "stdafx.h"

    int main(int argc, char* argv[])
    {
    return 0;
    }

    Es soll eine Win32 Konsolenanwendung werden.

    MfG

    Heinz



  • Hi

    Dateien umbenennen:

    int rename( const char *oldname, const char *newname );
    

    Beispiel aus der MSDN:

    /* RENAMER.C: This program attempts to rename a file
     * named RENAMER.OBJ to RENAMER.JBO. For this operation
     * to succeed, a file named RENAMER.OBJ must exist and
     * a file named RENAMER.JBO must not exist.
     */
    
    #include <stdio.h>
    
    void main( void )
    {
       int  result;
       char old[] = "RENAMER.OBJ", new[] = "RENAMER.JBO";
    
       /* Attempt to rename file: */
       result = rename( old, new );
       if( result != 0 )
          printf( "Could not rename '%s'\n", old );
       else
          printf( "File '%s' renamed to '%s'\n", old, new );
    }
    

    Dateien löschen

    int remove( const char *path );
    

    Beispiel aus der MSDN:

    /* REMOVE.C: This program uses remove to delete REMOVE.OBJ. */
    
    #include <stdio.h>
    
    void main( void )
    {
       if( remove( "remove.obj" ) == -1 )
          perror( "Could not delete 'REMOVE.OBJ'" );
       else
          printf( "Deleted 'REMOVE.OBJ'\n" );
    }
    

    Grüße Rapha



  • ps. falsches Forum 😉



  • Hallo !

    Vielen Dank für die Antwort - Ich probier es gleich mal aus.

    Aber wieso falsches Forum ?

    Gibt es denn noch ein anderes ?

    Heinz



  • Dies ist das MFC Forum
    das C++ Forum findest du hier: http://www.c-plusplus.net/forum/viewforum.php?f=15



  • Hihi! Na Rapha, du hast dich doch verklickt, oder? 😃



  • Pf, habs nach 2 Sek. bemerkt (nur dumm, das dus in den 2 Sek. gesehen hast 😉 )



  • Hallo

    Hab Deinen Code eingegebn aber es kommen folgene Fehlermeldungen:

    \programme\microsoft visual studio\myprojects\dateien1\dateien1.cpp(12) : error C2059: Syntaxfehler : 'new'
    f:\programme\microsoft visual studio\myprojects\dateien1\dateien1.cpp(15) : error C2059: Syntaxfehler : ')'
    f:\programme\microsoft visual studio\myprojects\dateien1\dateien1.cpp(19) : error C2059: Syntaxfehler : ')'
    f:\programme\microsoft visual studio\myprojects\dateien1\dateien1.cpp(19) : error C2143: Syntaxfehler : Fehlendes ')' vor ';'
    f:\programme\microsoft visual studio\myprojects\dateien1\dateien1.cpp(20) : error C2143: Syntaxfehler : Fehlendes ')' vor '}'
    f:\programme\microsoft visual studio\myprojects\dateien1\dateien1.cpp(20) : error C2143: Syntaxfehler : Fehlendes ';' vor ')'
    Fehler beim Ausführen von cl.exe.

    wo liegt der Fehler ?

    Heinz



  • Schon wieder schneller...

    änänänäääänäääää.... :p

    Okay, ich hör auf dich zu "ärgern".



  • Hallo

    Hab Deinen Code eingegebn aber es kommen folgene Fehlermeldungen:

    \programme\microsoft visual studio\myprojects\dateien1\dateien1.cpp(12) : error C2059: Syntaxfehler : 'new'
    f:\programme\microsoft visual studio\myprojects\dateien1\dateien1.cpp(15) : error C2059: Syntaxfehler : ')'
    f:\programme\microsoft visual studio\myprojects\dateien1\dateien1.cpp(19) : error C2059: Syntaxfehler : ')'
    f:\programme\microsoft visual studio\myprojects\dateien1\dateien1.cpp(19) : error C2143: Syntaxfehler : Fehlendes ')' vor ';'
    f:\programme\microsoft visual studio\myprojects\dateien1\dateien1.cpp(20) : error C2143: Syntaxfehler : Fehlendes ')' vor '}'
    f:\programme\microsoft visual studio\myprojects\dateien1\dateien1.cpp(20) : error C2143: Syntaxfehler : Fehlendes ';' vor ')'
    Fehler beim Ausführen von cl.exe.

    wo liegt der Fehler ?

    Heinz

    Rapha schrieb:

    Hi

    Dateien umbenennen:

    int rename( const char *oldname, const char *newname );
    

    Beispiel aus der MSDN:

    /* RENAMER.C: This program attempts to rename a file
     * named RENAMER.OBJ to RENAMER.JBO. For this operation
     * to succeed, a file named RENAMER.OBJ must exist and
     * a file named RENAMER.JBO must not exist.
     */
    
    #include <stdio.h>
    
    void main( void )
    {
       int  result;
       char old[] = "RENAMER.OBJ", new[] = "RENAMER.JBO";
    
       /* Attempt to rename file: */
       result = rename( old, new );
       if( result != 0 )
          printf( "Could not rename '%s'\n", old );
       else
          printf( "File '%s' renamed to '%s'\n", old, new );
    }
    

    Dateien löschen

    int remove( const char *path );
    

    Beispiel aus der MSDN:

    /* REMOVE.C: This program uses remove to delete REMOVE.OBJ. */
    
    #include <stdio.h>
    
    void main( void )
    {
       if( remove( "remove.obj" ) == -1 )
          perror( "Could not delete 'REMOVE.OBJ'" );
       else
          printf( "Deleted 'REMOVE.OBJ'\n" );
    }
    

    Grüße Rapha



  • new ist ein reservirtes Wort. Deswegen ist es ja auch blau.

    Vorsicht, leider sind nicht alle reservierten Worte blau.

    Nimm einen anderen Namen.



  • Hallo !

    Viwlwn Dank ! Es klappt

    Aber ich wollte gerne auch andre Dateien manipulieren - hier sind ja schon die DateiNamen vorgegeben.

    wie geht das denn

    estartu_de schrieb:

    new ist ein reservirtes Wort. Deswegen ist es ja auch blau.

    Vorsicht, leider sind nicht alle reservierten Worte blau.

    Nimm einen anderen Namen.



  • Hi
    Du hast wohl was missverstanden.
    Du kannst mit diesen Funktionen JEDE Datei manipulieren (es sei denn sie ist schreibgeschützt oder wird von Windows verwendet).

    Grüße Rapha



  • Hallo

    Missverstanden ? Ne !

    Aber ich möchte nicht immer in den Quellcode um die Angaben der Dateien zu ändern.

    Gibts nicht sowas wie cin oder cout ?

    H-

    Rapha schrieb:

    Hi
    Du hast wohl was missverstanden.
    Du kannst mit diesen Funktionen JEDE Datei manipulieren (es sei denn sie ist schreibgeschützt oder wird von Windows verwendet).

    Grüße Rapha



  • Hi

    Ich hab dich immer noch nicht verstanden...
    Du willst den Benutzer entscheiden lassen, welche Datei das Programm löscht?

    Grüße Rapha



  • Hi !

    Also wenn Du mich mit Benutzer meinst, dann ja.

    Ich will in der Konsole eingeben, welche Dateien umbenanmnt bzw. gelöscht werden können.

    H.

    Rapha schrieb:

    Hi

    Ich hab dich immer noch nicht verstanden...
    Du willst den Benutzer entscheiden lassen, welche Datei das Programm löscht?

    Grüße Rapha



  • Hi !

    Also wenn Du mich mit Benutzer meinst, dann ja.

    Ich will in der Konsole eingeben, welche Dateien umbenanmnt bzw. gelöscht werden können.

    H.

    Rapha schrieb:

    Hi

    Ich hab dich immer noch nicht verstanden...
    Du willst den Benutzer entscheiden lassen, welche Datei das Programm löscht?

    Grüße Rapha



  • Das ist nicht schwer und Du wirst in jedem drittklassigen Tutorial/ Buch erfahren wie Du das bewerkstelligen kannst, wie Du schon so richtig sagtest sind std::cout und std::cin Deine Freunde, verwende uU auch std::string oder nimm die Dateinamen als Kommandozeilenargument entgegen (argv[n]).



  • Hallo !

    Das ist ja alles nett gemeint - aber mit einem Quellcode von Euch wäre mir mehr geholfen

    Es miß doch jemand von Euch in der Lage sein, mir einen Code zu geben, der das Problem erschlägt.

    Ich will doch nur Dateien umbenennen und löschen.

    H.

    nman schrieb:

    Das ist nicht schwer und Du wirst in jedem drittklassigen Tutorial/ Buch erfahren wie Du das bewerkstelligen kannst, wie Du schon so richtig sagtest sind std::cout und std::cin Deine Freunde, verwende uU auch std::string oder nimm die Dateinamen als Kommandozeilenargument entgegen (argv[n]).



  • Soweit ich sehe wurden schon 2 Code-Blöcke geliefert die das erledigen!!! Was gibt es nciht zu verstehen?? Du musst halt mit 'cin' die dateinamen der alten und neuen datei einlesen (also vom user eingeben lassen) und diese als argument an die dir schon vor 5 minuten gegebenen funktionen übergeben.



  • heinz1 schrieb:

    aber mit einem Quellcode von Euch wäre mir mehr geholfen

    Es miß doch jemand von Euch in der Lage sein, mir einen Code zu geben, der das Problem erschlägt.

    Ich wage zu behaupten dass jeder hier das lösen könnte, der springende Punkt jedoch ist: Du könntest es auch wenn Du Dir unsere Tips durchlesen würdest und nicht nur darauf wareten würdest dass hier irgendjemand Deine Hausaufgaben macht.


Anmelden zum Antworten