C sharp - Descomprimir .TAR

 
Vista:

Descomprimir .TAR

Publicado por Pettete (22 intervenciones) el 02/02/2018 09:06:50
Hola buenas,
al intentar descomprimir un fichero .TAR me da el siguiente error.

"El sistema no puede encontrar el archivo especificado"

Para descomprimir el tar uso el siguiente código:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
private static void ExtractFileWith7Z(string sourceArchive, string destination)
        {
            string zPath = "7z.exe"; //add to proj and set CopyToOuputDir
 
            try
            {
 
                ProcessStartInfo pro = new ProcessStartInfo();
                pro.WindowStyle = ProcessWindowStyle.Hidden;
                pro.UseShellExecute = false;
                pro.RedirectStandardOutput = true;
                pro.FileName = zPath;
                pro.Arguments = string.Format("x \"{0}\" -y -o\"{1}\"", sourceArchive, destination);
                Process x = Process.Start(pro);
 
               // string output = x.StandardOutput.ReadToEnd();
 
             x.WaitForExit();
 
 
            }
            catch (System.Exception Ex)
            {
                throw Ex;
            }
        }

El código que os facilito es un trocito del código entero.
El código entero lo que hace es mediante un fichero, descomprime todos los ficheros de la carpeta. luego cuanta cuantos ficheros se han descomprimido e inserta la suma esa en una tabla.

La cosa es que los archivos .zip los descomprime sin ningún problema pero cuando localiza un .TAR da error..
¿sabéis porque?

Como bien sabéis, toda ayuda es bien recibida y muy agradecída.

Un saludo de vuestro amigo y vecino,
PETETE;)
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 218
Bronce
Ha mantenido su posición en C sharp (en relación al último mes)
Gráfica de C sharp

Descomprimir .TAR

Publicado por Cesar (82 intervenciones) el 02/02/2018 22:18:33
Hola.

Cabe señalar. El formato TAR, no es un formato comprimido. El TAR lo unico que es hace, es organizar todos los archivos dentro de uno solo (similar a los archivos ISO).

El equivalente del TAR comprimido, es TAR.GZ.

Tu codigo aparentemente esta bien, por lo que tendrias que asegurarte que estes pasando bien las rutas de los archivo origen y destino.

Por otro lado. Mi sugerencia seria que no ocupes programas de terceros, e integres la misma descompresion en tu programa.

Puedes emplear la libreria SharpZipLib, la cual soporta varios formatos (entre ellos los 2 que mencionas, ZIP y TAR):

http://icsharpcode.github.io/SharpZipLib

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
2
Comentar