[英]How do I handle malformed XML files during import process?
我剛剛完成了一個將相當簡單的XML數據文件導入數據庫的應用程序。 該應用程序運行正常,但我想知道如何處理錯誤的XML文件。 例如,用戶選擇的XML文件的布局與我的應用程序所需的布局不同。 最終,我還要添加選擇多個要導入文件的功能,並且希望在遇到格式錯誤的文件時僅警告用戶,而不是拋出異常。
有什么建議么?
謝謝!
編輯:示例XML文件...
<export-database name="/data/data/dump.db">
<table name="gpsPoints">
<row>
<col name="_id">0</col>
<col name="latitude">0000000000</col>
<col name="longitude">0000000000</col>
<col name="rssi">-00</col>
<col name="logdate">00 000 00 00:00:00</col>
<col name="mcc">000</col>
<col name="mnc">000</col>
<col name="lac">00</col>
<col name="cellid">000</col>
<col name="site_lat">0</col>
<col name="site_lng">0</col>
<col name="tech">0000000000</col>
<col name="ber">-000</col>
<col name="callstate">0000000000/col>
<col name="roaming">0000000000</col>
</row>
</table>
</export-database>
對我來說,這聽起來像是一個簡單的嘗試捕獲的事情...不? 當結構不是問題時,事情的確會變得復雜,但是提供的數據在某種程度上是錯誤的,並且您需要“拒絕”特定記錄/節點的能力,但這聽起來並不像您的情況。 另外,了解您如何准確地閱讀XML(即DOM,XML序列化,XML Linq)也可能會有所幫助。
使用簡單的try / catch程序,解析XML文件並檢查其是否有效,可能會花費更多的精力編寫,並且處理時間也會更長。
例如,如果要填充數據集,則代碼應如下所示
try {
DataSet ds = new DataSet();
ds.LoadXml("myfile.xml");
}
catch {
ErrorLabel.Text = "Your XML isn't valid";
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.