Gå til innhold

[python] opprette en tar-fil uten å lagre på disk?


Anbefalte innlegg

Hepp!

 

Jeg har et program som skal sende over en eller flere filer over ett nettverk. Det jeg prøver å få til er at disse filene blir komprimert med bzip2 i en tar-fil, og så sende denne tar-filen over nettverket, lagre tar-filen i en sql database, og åpne filer fra tar-fila on-demand... altså, dekomprimere og åpne i relevant program.

 

Når jeg nå ser over tarfile modulen i python ser det ut til at jeg må lage en fysisk tar-fil, istedenfor å kunne lagre det i minnet og sende direkte over nettverket, istedenfor å mellomlagre på disk og så lese og sende over... Tar jeg feil her?

Lenke til kommentar
Videoannonse
Annonse

StringIO / cStringIO :)

 

http://docs.python.org/library/stringio.html - lager et fil-like objekt i minne. Husk seek(0) hvis du vil bruke read() for å lese innhold :)

 

Ellers har vi os.tmpfile() hvis det er litt større filer det er snakk om.

 

Return a new file object opened in update mode (w+b). The file has no directory entries associated with it and will be automatically deleted once there are no file descriptors for the file.

 

Availability: Unix, Windows.

Endret av Terrasque
Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...