나는 나는 그런 사소한 일을 자신을 작성하지 않습니다 생각하지만 일부 문자 집합 변환을 할 필요가 있기 때문에, 여기은 : 원래의 파일 이름으로
#!/usr/bin/python
import os
import sys
import codecs
INPUT_ENCODING = codecs.BOM_UTF16_LE # 'utf_16_le'
OUTPUT_ENCODING = 'utf-8-sig' # is there a constant for this??
if len(sys.argv) == 1:
print 'Usage:\n\t%s <filename.txt>' % sys.argv[0]
sys.exit(-1)
output_file = os.path.splitext(os.path.split(sys.argv[1])[-1])[0]
fin = codecs.open(sys.argv[1], 'rb', encoding=INPUT_ENCODING)
fout = codecs.open(output_file + '_utf8bom.txt', 'wb', encoding=OUTPUT_ENCODING)
fout.write(fin.read())
fin.close()
fout.close()
print 'done'
전화를 만 즉 :
# utf8bom_add.py myfilename.txt
그리고 당신은 UTF-8
에 UTF-8
변환하는 경우 그 정확한 값으로 INPUT_ENCODING
을 변경합니다.
절대적으로 완벽! 내가 온 것보다 훨씬 낫다. 많은 감사. – Stephane
"$ @"가 $ *보다 낫습니다. 인수로 공백을 유지합니다. (windows + cygwin에서 유용합니다.) – mcoolive
@mcoolive thanks –