2013-04-28 2 views
0

"Hello world"문자열이 포함 된 TXT 파일을 입력하는 간단한 프로그램이 있습니다. 이 파일을 압축하여 메모리 공간을 늘리고 싶습니다. 그렇게하기 위해, 나는 허프만 알고리즘을 코딩했다. 내 프로그램은 대상 파일을 열고 문자 '0'과 '1'로 인코딩 된 문자열 (Hello world)을 로그 할 수 있습니다. 그러나 바이너리 코드를 포함하는 출력 파일을 만들고 싶습니다 (물론 문자가 아님). 하지만 어떻게해야할지 모르겠다. 누구든지 나를 도와 줄 수 있니?허프만 인코딩 알고리즘을 사용하여 출력 인코딩 된 파일을 작성하는 방법은 무엇입니까?

미리 도움을 주셔서 감사합니다. 나는이 실패 바이너리했던 C++ 가장 일을 잘 모릅니다으로

+0

프로그래밍 할 언어는 무엇입니까? – NickSlash

+0

내 프로그램이 C++로 코딩되어 있습니다. – user1364743

답변

0

나는 8의 배수 여야합니다 .. 당신에게

함수의 출력을 예제를 줄 수 없다 (같은이 (8) 비트 단위)

각 8 비트를 바이트 (char)로 변환하여 출력해야합니다. 이 단계를 수행하도록 인코딩 기능을 수정하여 출력을 버퍼링하는 것이 더 좋을 수 있습니다.

저장할 때 엔디안을 강제로 (예 : 빅 엔디안으로 인코딩하는) 필요할 수 있으므로 나중에 데이터를 읽고 디코딩하면 인코딩 된 방법을 알 수 있습니다.