Я хочу разархивировать файлы внутри папки и переименовать их с тем же именем, что и файл с исходным кодом .zip
, но сохраняя исходное расширение отдельных файлов. Есть идеи, как это сделать?Распакуйте и переименуйте файлы, поддерживающие исходное расширение файла
Возпроизводимо пример:
# Download zip files
ftppath1 <- "ftp://geoftp.ibge.gov.br/malhas_digitais/censo_2010/setores_censitarios/se/se_setores_censitarios.zip"
ftppath2 <- "ftp://geoftp.ibge.gov.br/malhas_digitais/censo_2010/setores_censitarios/al/al_setores_censitarios.zip"
download.file(ftppath1, "SE.zip", mode="wb")
download.file(ftppath2, "AL.zip", mode="wb")
То, что я имел в виду что-то наивным, как это:
# unzip and rename files
unzip("SE.zip", file_name= paste0("SE",.originalextension))
unzip("AL.zip", file_name= paste0("AL",.originalextension))
В конце концов, эти файлы я бы в моей папке:
SE.zip
AL.zip
AL.shx
AL.shp
AL.prj
AL.dbf
SE.shx
SE.shp
SE.prj
SE.dbf
Как вы хотите обрабатывать папки? Что произойдет, если два файла имеют одинаковое расширение? – Chris
По существу, вам нужно сделать каждый zip-файл, сохранить имя zip без последних 4 символов (что вы можете сделать с 'substr'). Затем откройте zip, извлеките имя файла, возьмите расширение с регулярным выражением (как могут быть разные расширения) и вставьте это расширение в конец ранее сохраненного имени zip. Затем сохраните файл под этим именем и выражением. – giraffehere