2011-11-11 3 views
0

어떻게 XML을 분할 할 수 있습니까? 종료 태그에 도달이 (즉 (? "메시지"))Windows phone 7에서 XML을 분할하는 방법

+0

샘플에 대한 자세한 정보를 얻을 수 있나요? 그리고 당신이 원하는 것을 더 잘 설명하려고 시도하십시오. –

+0

'if (strParts.Length> = 0)'는 * 항상 * true이거나'NullReferenceException'을 던집니다. 음수의 배열은 없습니다. 집단. –

+0

retXML = ""+ msg_time + "" \t \t \t \t + l_msg_id + ""+ from_id \t \t \t \t + ""+ 아바타 \t \t \t \t + " "+ 발신자 이름 \t \t \t \t + ""+ to_id + ""+ MSG_TEXT \t \t \t \t + ""+ picture_key \t \t \t \t + ""+ 다음 sID + " " \t \t \t \t + m_type +" "; \t \t return retXML; 끝 태그 도달 범위 ("/ mesages") –

답변

1

이 문자열 연산으로 XML을 처리하려고하지 마십시오 때 나는

public static String insertNewMsg(String aMsg, String newMsgXML) 
{ 
    String retXML = null; 
    //int size = aMsg.s 
    String[] strParts = aMsg.Split("</messages>"); 
    if (strParts.Length >= 0) 
    { 
     retXML = strParts[0] + newMsgXML + "</messages>"; 
    } 
    return retXML; 
} 

내가 분할 할이 코드를 사용하고 있습니다. XML 라이브러리 사용 - Windows Phone 7은 LINQ to XML을 지원하므로 귀하의 삶이 많이 더 쉬울 것입니다.

당신이하려는 것을 말하지 않았지만 LINQ to XML을 사용하는 것이 매우 쉽습니다.

편집 : 지금 삭제 된 의견에 따르면 문자열 연결을 사용하여 원본 XML을 작성하고있는 것으로 나타났습니다. 하시기 바랍니다하시기 바랍니다. 매개 변수화 된 쿼리를 사용하는 대신 SQL 자체에 사용자 값을 포함시켜 SQL 쿼리를 작성하는 것은 XML과 동일하며 위험합니다. LINQ to XML은 Windows Phone 7에서 잘 지원되는 멋진 라이브러리이므로 XML 작업 (생성, 구문 분석 또는 조작)을 수행하려는 경우 언제든지 사용하십시오.

+0

retXML = ""+ msg_time + "" \t \t \t \t + l_msg_id + ""+ from_id \t \t \t \t + ""+ 아바타 \t \t \t \t + " "+ 발신자 이름 \t \t \t \t + ""+ to_id + ""+ MSG_TEXT \t \t \t \t + ""+ picture_key \t \t \t \t + ""+ 다음 sID + " " \t \t \t \t + m_type +" "; \t \t return retXML; 끝 태그 도달 범위 도달 ("/ mesages"). –

+0

@SumeshMohanK : 왜 당신이 그 코드를 게시했는지는 명확하지 않지만 제 편집을 보아서는 안됩니다. 아직 성취하려는 것이 명확하지 않습니다. http://tinyurl.com/so-hints를 읽으십시오. –

관련 문제