Tengo un archivo comprimido .rar .7z, .tar y .zip y quiero cambiar el nombre del archivo físico disponible en el archivo comprimido anterior usando C #.
He intentado esto usando una biblioteca sharpcompress pero no puedo encontrar una función para cambiar el nombre del archivo o carpeta dentro de los archivos .rar .7z, .tar y .zip.
También he intentado usar la biblioteca DotNetZip pero es su único soporte. Vea lo que he intentado usando la biblioteca DotNetZip.
private static void RenameZipEntries(string file)
{
try
{
int renameCount = 0;
using (ZipFile zip2 = ZipFile.Read(file))
{
foreach (ZipEntry e in zip2.ToList())
{
if (!e.IsDirectory)
{
if (e.FileName.EndsWith(".txt"))
{
var newname = e.FileName.Split('.')[0] + "_new." + e.FileName.Split('.')[1];
e.FileName = newname;
e.Comment = "renamed";
zip2.Save();
renameCount++;
}
}
}
zip2.Comment = String.Format("This archive has been modified. {0} files have been renamed.", renameCount);
zip2.Save();
}
}
catch (Exception ex)
{
MessageBox.Show(ex.ToString());
}
}
Pero en realidad lo mismo que el anterior también quiero para .7z, .rar y .tar, probé muchas bibliotecas pero aún no obtuve ninguna solución precisa.
Por favor, ayúdame.
the rename
después de Extract () como zip
.
var result = Path.ChangeExtension(myffile, ".jpg");
-> docs.microsoft.com/en-us/dotnet/api/…