2017-11-30 1 views
1

다음 간단한 코드를 사용하여 파이썬을 사용하여 동일한 이미지 파일을 인코딩하고 디코딩하려고합니다. 그러나 출력 파일이 입력 파일보다 클 때마다 열 수 없습니다. 이 코드의 문제점은 무엇입니까?파이썬에서 binary64 파일을 base64로 인코딩/디코딩하는 방법은 무엇입니까?

import base64 

with open("img.jpeg", "rb") as image_file: 
    encoded_string = base64.b64encode(image_file.read()) 

    decoded_string = base64.b64decode(encoded_string) 
    with open("test_img.jpeg", "w") as image_file2: 
     image_file2.write(decoded_string); 

원본 파일 : https://filebin.ca/3j6aIDlWEYdV/img.jpeg
결과 파일 : https://filebin.ca/3j6arBo85Lcg/test_img.jpeg

+1

이 코드를 로컬에서 실행하면 입력 파일과 동일한 출력 파일이 생성됩니다. ** **이 코드는 실행 중인지 확실합니까? – Mureinik

+0

예, 코드를 붙여 넣기 만하면됩니다.이 코드를 여러 번 테스트했습니다. 내 파이썬 버전은 2.7.13입니다. 문제가 될 수 있습니까? –

+0

저는 2.7.13도 실행 중입니다 – Mureinik

답변

1

"wb"로 쓰기 모드를 변경해보십시오. 지금 다른 형식으로 쓰고 읽는 중입니다.

관련 문제