??그림 8의 코드는 문자열 데이터를 Base64로 인코딩된 XML 스트림으로 변환하는 방법을 보여줍니다. 그림 9는 출력 결과이다.
그림 8 문자열 배열을 Base64로 유지
system.Text 사용
System.IO 사용; >
System.사용 🎜>{
string outputFileName = 'test64.xml'
if (args.Length > 0)
outputFileName = args[ 0]; // 파일 이름
//배열을 XML로 변환
String[] theArray = {'Rome', 'New York', 'Sydney' , '스톡홀름',
'파리'};
CreateOutput(theArray, outputFileName)
}
private static void CreateOutput(string[] theArray, string filename)
{
// Open XML 작성기
XmlTextWriter xmlw = new XmlTextWriter(filename, null);
//Indentation 및 IndentChar에 따라 하위 요소의 들여쓰기를 설정합니다. 이 옵션은 요소 내용만 들여쓰기합니다.
xmlw.Formatting = Formatting.Indented;
//버전 "1.0"으로 XML 선언 작성
xmlw.WriteStartDocument( );
//지정된 텍스트를 포함하는 댓글을 작성합니다.
xmlw.WriteComment('Array to Base64 XML');
//배열 노드 쓰기 시작
xmlw.WriteStartElement('array')
//지정된 접두사, 로컬 이름, 네임스페이스 URI 및 값을 사용하여 속성 쓰기
xmlw.WriteAttributeString('xmlns', 'x', null, 'dinoe:msdn-mag'); >
//루프에 배열의 하위 노드 쓰기
foreach(string s in theArray)
{
//지정된 시작 태그 쓰기 그리고 이를 지정된 네임스페이스 및 접두사
xmlw.WriteStartElement('x', 'element', null)
//S를 byte[] 배열로 변환하고 byte[ ] 배열을 Base64에 저장하고 결과 텍스트를 씁니다. 쓸 바이트 수는 s 전체 길이의 2배이며, 문자열이 차지하는 바이트 수는 2바이트입니다.
xmlw.WriteBase64(Encoding.Unicode.GetBytes(s), 0, s.Length*2)
//닫힌 하위 노드
xmlw.WriteEndElement() ;
}
//닫힌 루트 노드, 2개 레벨만
xmlw.WriteEndDocument()
// 닫힘 writer
xmlw.Close();
// 작성된 내용 읽기
XmlTextReader reader = new XmlTextReader(filname) >
while(reader.Read())
{
//element라는 노드 가져오기
if (reader.LocalName == 'element' )
{
byte[] bytes = new byte[1000];
int n = reader.ReadBase64(bytes, 0, 1000)
string buf = Encoding.Unicode.GetString(bytes);
Console.WriteLine(buf.Substring(0,n))
}
}
reader.Close();
}
}
위 내용은 .NET Framework에서 XML 데이터를 쉽게 처리하는 내용(4-3)입니다. 더 많은 관련 내용은 PHP 중국어 홈페이지(m.sbmmt.com)를 참고해주세요!