Visualizzazione dei risultati da 1 a 10 su 10
  1. #1
    Utente di HTML.it L'avatar di Radio
    Registrato dal
    Mar 2002
    Messaggi
    2,966

    In C....

    come faccio a:

    copiare un file da una cartella all'altra
    copiare una cartella intera
    rinominare un file
    cancellare una cartella o un file

    in C?

    GRAZIE!!!

  2. #2
    marukomon
    Guest
    usi la funzione system() della libreria stdlib.h

  3. #3

  4. #4
    Utente di HTML.it
    Registrato dal
    Nov 2002
    Messaggi
    2,460
    purtroppo (forse purtroppo) non ci sono funzioni già fatte
    quindi non esistono cose tipo
    file.rename (del java mi pare ( o del visual j++))
    quindi devi usare system() e utilizzare i comandi di dos
    o windows
    o non so :>
    cmq hai capito vero ?

  5. #5
    Utente di HTML.it L'avatar di Radio
    Registrato dal
    Mar 2002
    Messaggi
    2,966
    Aha!
    Adesso va meglio!!

    Grazie mille!

  6. #6
    Utente di HTML.it L'avatar di Radio
    Registrato dal
    Mar 2002
    Messaggi
    2,966
    La mia intenzione è quella di fare un piccolo programma di installazione per un gioco, volevo sapere come si può dire al mio programma di decomprimere in una cartella specifica un file in ACE, sempre se è possibile!

    Grazie!

  7. #7
    Originariamente inviato da Radio
    La mia intenzione è quella di fare un piccolo programma di installazione per un gioco, volevo sapere come si può dire al mio programma di decomprimere in una cartella specifica un file in ACE, sempre se è possibile!

    Grazie!
    Io il C non lo uso da molto, ma un sistema che usavo su Perl e aprire il file nel punto di origine e scriverlo nella destinazione!!

    per copiare una cartella intera boh!

  8. #8
    Usare la system() o cmq una qualsiasi funzione che lanci un comando e' la soluzine *contadina* (senza nessuna offesa ai contadini che sono dei grandi, ma che con i pc di solito non ci sanno fare) alla questione. Vosto che sono per le cose veloci e ottimizzate... il modo migliore per copiare un file da una parte all'altra e' quello di aprire il file da copiare e schiaffare byte per byte nella locazione da copiare. In C:

    ******* snip ******

    #include <stdio.h>

    int main(int argc, char *argv[]) {

    FILE *buf_read, *buf_write;
    int ch;

    buf_read = fopen(argv[1], "r");
    buf_write = fopen(argv[2], "w");

    while ((ch = fgetc(buf_read)) != EOF)
    fputc(ch, buf_write);

    fclose(buf_write);
    fclose(buf_read);

    return 0;
    }

    ****** snip ******

    Per copiara un'intera directory invece ovviamente devi copiare ogni singolo file. Per Unix trovi informazioni con i man:

    man opendir
    man readdir
    man closedir


    Su windows e DOS non lo so, non ho mai provato

    bye
    There are 10 kinds of people in the world: who knows the binary numeration and who not

  9. #9
    Utente di HTML.it L'avatar di Radio
    Registrato dal
    Mar 2002
    Messaggi
    2,966
    ogni file, uno per uno?!

  10. #10
    Utente di HTML.it
    Registrato dal
    Mar 2006
    Messaggi
    4
    rinomina file o cartella...

    <stdio.h>
    rename( vecchio, nuovo );

    cancellare un file...

    <stdio.h>
    unlink ( file );
    remove ( file );

    creare cartella....

    asm
    {
    mov ah, 0x39
    mov dx, indirizzo_nome_cartella
    int 0x21
    }

    cancellare cartella...
    asm
    {
    mov ah, 0x3a
    mov dx, indirizzo_cartella
    int 0x21
    }

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.