CD/DVD에서 ISO 이미지를 만드는 C#으로 응용 프로그램을 개발 중이며, Iso 파일에 포함 된 파일을 삭제할 수 있지만 지금까지 ' 그것을 할 방법을 찾지 마라. 아이디어가 있으면 알려주세요. 미리 감사드립니다.C#으로 ISO 이미지의 파일 지우기
답변
"관련 질문"에 다음 질문이 나타났습니다. "How can I add and remove files from an ISO image?". 그것은 C# 태그가 아니지만 답변을 살펴 봐야합니다.
좋은 소식이지만 C#으로 프로그래밍 중이며 제안 된 librairies는 Delphi 용이지만 한 가지 의견은 파일을 삭제하기 위해 WinRAR을 사용하겠다고 제안 했습니까 ?? – user2407200
나는 받아 들여진 응답에서 토론 된 명령 행 도구를 의미했습니다. – alexis
프로그램 작동 순서 만 변경하면됩니다. 먼저 파일 계층 구조를 읽고 사용자가 삭제할 파일을 선택한 다음 나머지 파일을 ISO 파일로 쓸 수 있습니다. 파일과 디렉토리를 트리 데이터 구조로 유지할 수 있어야합니다. 폴더 또는 파일을 삭제하면 해당 노드 또는 리프가 삭제됩니다.
ISO 이미지에서 파일이나 디렉토리를 직접 삭제하는 것과 관련하여 ISO9660 (ECMA-119) 형식은 기본적으로 직렬화 된 트리 구조이므로 위와 같은 규칙이 적용됩니다. 하위 트리에 해당하는 레코드를 제로로 만들고 삭제하려는 리프를 간단히 제하십시오. 그러나 이러한 접근 방식은 이미지에 쓰레기 공간을 남겨 둡니다. 실제로 이미지의 크기를 줄이려면 이미지에서 압축 작업을 수행해야합니다 (계층 구조를 새 파일로 다시 직렬화).
나는 ISO 형식의 구조화되지 않은 특성으로 인해이를 수행 할 방법이 없다고 의심 스럽습니다. 그리고 이렇게하려면 삭제 된 파일없이 새 ISO를 작성해야합니다. – Joe
모든 레코드가 링크 된 트리이므로 ISO 파일에는 구조가 있습니다. 그리고 디렉토리의 모든 하위 레코드는 순차 배열을 구성하며 첫 번째 색인은 디렉토리에 대한 자체 참조 레코드입니다. – iceflow19