vb6의 일부 변수 내용을 텍스트 파일로 출력하는 데 문제가 있습니다. 것은 확장 ASCII의 특수 문자가 ä, ü,로 나타날 때 a, a, a와 같은 일치하는 기본 ASCII 문자로 변환됩니다.ASCII 문자 집합 특수 문자가있는 ADODB.Stream을 왜 ä로 변환하면?
UTF-8로 내보내려고했는데 문자가 올바르게 표시되었지만 ASCII로 출력해야합니다. 또한, 파일 이름이 일반적으로이 문자 (ä, ü, á ...)를 포함하지 않고 유지할 수 있다는 사실을 저에게 이상하게 보입니다.
"ASCII"문자 집합이 기본 문자 일뿐 확장 문자가 아니기 때문일 수 있습니까? 아마도 Windows에서 CodePages가 구성 되었기 때문일 수 있습니까? 나는 그들 (독일어, 영어)과 같은 결과를 가지고 몇 가지를 시도했다.
이것은 내가 사용하고 코드입니다 : 사전에
Set fileStream = New ADODB.Stream
If Not fileStream Is Nothing Then
inputString = textPreAppend + inputString
fileStream.charSet = "ASCII"
fileStream.Open
fileStream.WriteText inputString
fileStream.Flush
fileStream.SaveToFile fileName, adSaveCreateOverWrite
fileStream.Flush
fileStream.Close
End If
Set fileStream = Nothing
감사합니다!
이 경우 ascii는 iso8859-1/codepage 1252를 나타냅니다. – Deanna
Deanna를 잘 알고 있기를 바랍니다. 문자 세트를 혼동시킬 수 있습니다. 방금 테스트를했는데 기본 ASCII라고 생각되는 20127 (US-ASCII) 문자 집합의 선택을 취소하고 출력 파일이 완전히 비어 있습니다. 이것은 내가 확장 ASCII (1252) 대신에 기본 ASCII를 사용하고 있음을 증명하는 것으로 생각하지만,이 코드 페이지는 지역 설정에서 선택됩니다. 어쩌면 코드 안에 강제로 넣어야합니까? – dajoropo