2013-08-09 2 views
3

나는 이걸 잘 알고 있습니다. 텍스트 파일에 중국어 문자를 써야합니다. 다음 메소드는 개행 문자가 제거되어 결과 파일이 하나의 슈퍼 문자열이되도록 작동합니다.파이썬에서 텍스트 파일에 UTF-8을 쓸 때 개행을 수정하십시오.

알고있는 모든 알려진 유니 코드 줄 바꿈을 삽입하려고했습니다. 어떤 도움이라도 대단히 감사합니다. 당신이 파이썬 2를 사용하는 경우

import codecs 
file_object = codecs.open('textfile.txt', "w", "utf-8") 
xmlRaw = (data to be written to text file)  
newxml = xmlRaw.split('\n') 
for n in newxml: 
    file_object.write(n+(u'2424'))# where \u2424 is unicode line break  
+1

파이썬 2 또는 3? –

+0

'u '\ n''은 유니 코드 줄 바꿈입니다. – user2357112

+0

"UTF-8로 변환"이란 무엇을 의미합니까? 처음에는 어떤 형태입니까? ASCII 텍스트 인 경우 이미 UTF-8입니다. – user2357112

답변

2

는, 다음 U "\ n을"은 줄 바꿈을 추가하고, 당신이 파일에 쓸 때 UTF 내부 유니 코드 형식을 인코딩하는 데 사용 : file_object.write((n+u"\n").encode("utf"))n를 확인 유형 unicode의 여기 조각입니다 루프 내부.

+0

이 오류를 제공합니다 : UnicodeDecodeError : 'ascii'코덱은 21 바이트 위치 0xe3을 디코딩 할 수 없습니다. 서수가 범위 내에 없습니다 (128) –

+0

'type (newxml)이란 무엇입니까? –

+0

'print type (newxml)'을 넣고 확인하십시오. –

관련 문제