FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour HB_UnzipFile()
Posts: 990
Joined: Wed Oct 19, 2005 02:17 PM
HB_UnzipFile()
Posted: Sat Feb 11, 2017 04:30 PM
Hola,

HB_UnzipFile() no funciona correctamente si tu fichero zip contiene ficheros y directorios.

Gracias a Juan Kazmirchuk con esta función se corrige el problema.

Code (fw): Select all Collapse
//-----------------------------------------------------------------------------
// Juan Kazmirchuk
//-----------------------------------------------------------------------------
FUNCTION my_UnZipFile( cFile, bBlock, lWithPath, cPassword, cPath )
  LOCAL lZip
  LOCAL nI
  LOCAL aFiles   := { }
  LOCAL aFolders := { }
  LOCAL nfiles := 0


  // Get files in ZIP
  aFiles := hb_GetFilesInZip( cFile )
  nFiles := len(aFiles)
  // Get folders in ZIP and create at cPath
  FOR nI := 1 TO nFiles

    IF ! HB_DirExists( HB_DirSepToOS( HB_FNameDir( aFiles[nI] ) ) )

      HB_DirCreate( HB_DirSepAdd( cPath ) + HB_DirSepToOS( HB_FNameDir( aFiles[nI] ) ) )

    ENDIF

  NEXT

  // Then UnZIP files in Path folder

  lZip := HB_UnZipFile( cFile, ;
                NIL, ;
                .T., ;
                NIL, ;
                cPath, ;
                aFiles )

RETURN lZip


Saludos
Posts: 10733
Joined: Sun Nov 19, 2006 05:22 AM
Re: HB_UnzipFile()
Posted: Sun Feb 12, 2017 05:36 AM
Regards



G. N. Rao.

Hyderabad, India
Posts: 990
Joined: Wed Oct 19, 2005 02:17 PM
Re: HB_UnzipFile()
Posted: Sun Feb 12, 2017 06:28 AM

Thanks a lot Mr. Rao !

Continue the discussion