2014-09-23 3 views
3

ZipFile를 읽기에서 지원되는 인코딩 이름이 아닙니다 : ZipFile에이 문자열이고 포함 내 파일을 읽으려고'IBM437가'내 코드를 사용하여이 실행에 문제가있는 방법

using (ZipFile archive = ZipFile.Read(File)) //<== Crash Here! 
{ 
    foreach (ZipEntry entry in archive.Entries) 
    { 
     entry.Extract(UnZipFolder.Name.ToString(), ExtractExistingFileAction.OverwriteSilently); 
    } 
} 

충돌, sincrofit .ZIP 후 충돌이 예외를 throw :

'System.ArgumentException'추가 정보 'IBM437'는 지원되는 인코딩 이름이 아닙니다.

+0

인코딩 이름은 일반 "437"입니다. 파일을 다시 보냅니다. 원하지 않습니다. –

+0

그리고 왜 그것을 원하지 않습니까? : O –

+1

.net 코어를 사용하는 경우 문제가 해결됩니다. https://stackoverflow.com/questions/37870084/net-core-doesnt-know-about-windows-1252-how-to-fix –

답변

0
Visual Studio에서

: 에서 1. 패키지 관리자 콘솔 및 유형의 설치 패키지 System.Text.Encoding.CodePages -Version 4.4.0합니다. 버전 번호를 적절하게 변경하십시오.

  1. 코드에 다음 줄을 추가하십시오. Encoding.RegisterProvider (CodePagesEncodingProvider.Instance); 필요한 경우 필요한 지시문을 첨부하십시오.
관련 문제