저는 우분투 13.10을 사용하고 있으며 결과를 파일로 출력하는 프로그램을 Eclipse로 작성하고 있습니다. 저는 문자를 사용하여 코드로 변환하는 LZW 압축 및 압축 풀기 프로그램을 구축 중입니다. 콘솔에서는 모든 것이 잘 출력됩니다. 그러나 출력을 파일(something.txt)로 리디렉션하려고 하면 다음과 같은 결과가 나옵니다.
문의
{편집하다}
cat something.txt는 다음을 표시합니다.
아바........b......
locale
설명하다:
LANG=en_US.UTF-8 LANGUAGE=en_US:en LC_CTYPE="en_US.UTF-8" LC_NUMERIC=en_GB.UTF-8 LC_TIME=en_GB.UTF-8 LC_COLLATE="en_US.UTF-8" LC_MONETARY=en_GB.UTF- 8 LC_MESSAGES="en_US.UTF-8" LC_PAPER=en_GB.UTF-8 LC_NAME=en_GB.UTF-8 LC_ADDRESS=en_GB.UTF-8 LC_TELEPHONE=en_GB.UTF-8 LC_MEASUREMENT=en_GB.UTF-8 LC_IDENTIFICATION=en_GB.UTF -8LC_ALL=
여기서 ababbababaaab는 내 프로그램의 입력이고 출력은 이러한 문자 중 일부의 ASCII 숫자여야 합니다.
터미널에서 인코딩을 변경해 보았지만 아무 것도 변경되지 않았습니다. 문제가 무엇인지 아시나요?
답변1
PrintWriter
내 파일에 쓰는 UTF-8
대신 해당 매개변수를 사용하고 설정 하면 문제가 사라졌습니다. DataOutputStream
(자바)