ruby zipping directory

Hello everyone,

I am trying zip files.

save_path_file = “/home/name/dest/zip/test.zip”

Zip::ZipFile.open(save_path_file, Zip::ZipFile::CREATE) { |zipfile|

zipfile.add(‘test’, “/home/my/file/destination/test.pdf”)

}

I want to Zip folder. Problem is If folder contain only one pdf, it just zipping file. while i extract the zipped file its not coming with folder while zipping folder contain one file.

How can i achive folder zipping even one files.

Please help

Thank You!

Hello everyone,

I am trying zip files.

      save_path_file = "/home/name/dest/zip/test.zip"        Zip::ZipFile.open(save_path_file, Zip::ZipFile::CREATE) { |zipfile|         zipfile.add('test', "/home/my/file/destination/test.pdf")        }

I want to Zip folder. Problem is If folder contain only one pdf, it just zipping file. while i extract the zipped file its not coming with folder while zipping folder contain one file.

How can i achive folder zipping even one files.

Did you try the docs at Class: Zip::ZipFile? I have not used it but it looks as if the answer should be there. Also googling for zip::zipfile::create add folder shows lots of good looking hits

Colin

Hi Colin,

I solved that. Just I make a directory and add files into that.

here my code:

save_path_file = “/home/name/dest/zip/test.zip”

folder_path = “/path/to_/folder_name”

Zip::ZipFile.open(save_path_file, Zip::ZipFile::CREATE) { |zipfile|

zipfile.mkdir(“folder_name”) unless File.exists?(“#{folder_path}”)

zipfile.add(‘test’, “/home/my/file/destination/test.pdf”)

}

Thank You!