2017-04-12 14 views
2

ここでは、C#で解析する必要がある無効なxml応答を示します。 レスポンスのクラスを作成しようとしていて、ほとんど成功しませんでした。無効なXMLを解析するC#

<Response service=\"RouteService\"> 
<Head>OK</Head> 
<Body> 
    <RouteResponse mailno=\"070033764942\"> 
     <Route accept_time=\"2017-03-23 10:57:13\"\taccept_address=\"United States\"\tremark=\"For Sign Info, please see 'AWB Info &amp; POD' in our website\"\topcode=\"8000\"/> 
     <Route accept_time=\"2017-03-23 10:52:10\"\taccept_address=\"United States\"\tremark=\"Have been signed(MS.TT),Thank you for using SF, and looking forward to serving you again\"\topcode=\"80\"/> 
     <Route accept_time=\"2017-03-23 10:52:10\"\taccept_address=\"United States\"\tremark=\"Have been signed(MS.TT),Thank you for using SF, and looking forward to serving you again\"\topcode=\"80\"/> 
     <Route accept_time=\"2017-03-23 10:46:37\"\taccept_address=\"SHENZHEN CITY\"\tremark=\"S.F. Express has picked up the shipment\"\topcode=\"50\"/> 
     <Route accept_time=\"2017-03-23 10:46:37\"\taccept_address=\"SHENZHEN CITY\"\tremark=\"S.F. Express has picked up the shipment\"\topcode=\"50\"/> 
    </RouteResponse> 
</Body> 

+3

すべての '\"を '' 'とすべての' \ t'を ''?に置き換えます。 – DavidG

+0

無効なxmlを生成したコードを修正しました。 – jdweng

答えて

3

あなたは非法的なXMLファイルを解析するために、標準的なC#のXMLライブラリを使用しようとしているように聞こえます。

これは動作しません。最初にファイルを「有効」にする必要があります。

提案:

  1. は、文字列にXMLテキストをお読みください。

  2. \"をすべて"に置き換えてください。

  3. 標準ライブラリを使用して、「訂正された」XMLを解析します。

+1

適切な解析のために\ tがある場所にスペースを追加する必要があります。 –

関連する問題