압축해제하는 방법

zip 파일을 압축해제하는 방법은 뭔가요?

invoke method를 이용해서 ExtractToDirectory를 실행했는데, ? 문자가 포함되면 에러가 발생되고
한글압축파일은 문자가 깨져서 압축이 풀립니다.

여러가지 방법이 있습니다만,
우선, 액티비티에 invoke power shell -zip압축 해제 하는 방법이 있습니다.

invoke code 액티비티의 경우

// System.Text.Encoding.Default 추가시 파일명 한글깨짐 해결
System.IO.Compression.ZipFile.ExtractToDirectory(zipPath, extractPath, System.Text.Encoding.Default);

image

감사합니다. 한글깨짐은 해결됐는데, 잘못된문자(ex.?) 포함시 오류 되는부분 해결은 안될까요?

그 문제에 대해서 상세히 알려주실 수 있나요.
파일이름에 원래 '?'와같은 문자를 입력할 수 없는것으로 알고있어서요…


그림과 같이 압축파일 제목 내에 ?가 들어있습니다

잘못된 문자는,
따로 어싸인으로 설정을 해주셔야 합니다. Replace혹은 remove로…설정해주면 됩니다.

replace하고싶은데 어싸인 어떻게 해야하나요?

name = name.replace("?","") 이런 포맷입니다만,
압축이 다 된 폴더에서, 파일명을 재 정리해주면서 윗 replace를 사용할수 있을것 같습니다.

zip 파일 내에 파일들 이름을 어떻게 가져와야하나요?

Directory.GetFiles(“yourfolderpath”,“2020-06-24.eml”)* 이렇게 함 해보실래요???

Directory.GetFiles() 가 폴더가아닌 .zip파일내부의 파일이름도 가져올 수 있나요?

Directory.getFIles로 안되는거같습니다.

압축풀면, 폴더에서 작업이 가능하실텐데요. zip파일내부에서는 안되죠

이분 같은경우에는 압축파일을 압축해제를 해야 하는데 압축파일내부에 '?'문자가 포함된 파일이 있어서 압축해제시 문제가 발생하기때문에 압축해제 과정에서의 해결방안이 필요하신거 같습니다…

가령 '?'문자가 포함된 파일이 만들어지기 전에 제목을 수정한다음 파일을 export하는 과정이 필요할듯한데요…


invoke code로 이렇게 해서 해결했습니다!

1 Like

This topic was automatically closed 3 days after the last reply. New replies are no longer allowed.