2009-04-08 22 views

答えて

13

何か:

static void Main() { 
     Test("<abc><def/></abc>"); 
     Test("<abc><def/><abc>"); 
    } 
    static void Test(string xml) { 
     using (XmlReader xr = XmlReader.Create(
       new StringReader(xml))) { 
      try { 
       while (xr.Read()) { } 
       Console.WriteLine("Pass"); 
      } catch (Exception ex) { 
       Console.WriteLine("Fail: " + ex.Message); 
      } 
     } 
    } 

あなたは​​を使用し、その後、XSDに対してチェックする必要がある場合。

4

パーサーで実行してください。それは適切なチェックを実行します(OKかどうかを解析します)。

大きな文書(示されている)の場合は、文書をメモリに保存しないため、イベントベースのパーサー(例:SAX)が適切です。

この種のものをチェックするためにXMLユーティリティを使用することは、しばしば便利です。私はXMLStarletを使用します。これはXMLチェック/操作用のコマンドラインセットです。

関連する問題