2009-07-25 4 views
1

내 프로그램의 특정 구성 요소를 저장하기 위해 XmlTextWriter를 사용하고 있습니다 (단 10-15 문자열 값이므로 XmlTextWriter를 사용하고 있습니다). 내 코드는 다음과 같습니다 :XmlTextWriter : 유니 코드를 사용할 수 있습니까?

XmlTextWriter writer = new XmlTextWriter("FILENAME.XML", null); 

writer.WriteStartElement("Config"); 
writer.WriteElementString("Param1", param1); 
writer.WriteElementString("Param2", param2); 
... 
writer.WriteEndElement(); 

writer.Close(); 

유니 코드를 포함하도록 paramX 값을 허용하고 싶습니다. 이 값은 사용자가 데이터를 입력하는 텍스트 상자에서 가져온 것이므로 시스템이 전 세계적으로 (중국어, 일본어, 히브리어, 아랍어 등) 잘 작동하도록하고 싶습니다. 나는 데이터를 파싱하지 않고 단지 다음에 프로그램이로드 될 때 잘 표현되기를 원한다.

어떻게 이것을 할 수 있습니까?

+0

참고로, new XmlTextReader() 또는 new XmlTextWriter()는 사용하지 말아야합니다. NET 2.0부터는 사용되지 않습니다. 대신'XmlReader.Create()'또는'XmlWriter.Create()'를 사용하십시오. –

답변

2

생성자의 두 번째 매개 변수는 encoding입니다. null가 남았을 경우의 디폴트의 인코딩은 UTF8입니다.

+0

내 프로그램에서 현재 모든 언어를 허용합니까? –

+0

예! http://en.wikipedia.org/wiki/UTF-8#Advantages_3 – MyItchyChin

1

글쎄, 여기에는 데이터를 보존하고 표시하는 두 가지 측면이 있습니다. XML은 유니 코드를 확실히 처리 할 수 ​​있으며 XmlTextWriter도 그렇게 할 수 있습니다.

그래도 데이터를 표시하는 데 사용 하시겠습니까? Windows Forms 응용 프로그램 인 경우 글꼴을 원하는 유니 코드를 모두 처리 할 수있는 글꼴로 명시 적으로 설정해야 할 수 있습니다. 관심있는 모든 문자 세트로 테스트 해 볼 가치가 있습니다 (히브리어 등).

+0

WPF 및 표준 텍스트 상자를 사용하고 있습니다. 문제가 있습니까? –

+1

아니요, WPF는 표준 글꼴에 특정 스크립트의 문자가없는 경우 자동 글꼴 대체를 처리해야합니다. 그래서 너 괜찮을거야. –

+0

그래도 확실히 테스트 할 수 있습니다 :) –