Vì vậy, tôi có một số XML:Làm thế nào để ngăn chặn XMLReader ném không hợp lệ XML nhân vật ngoại lệ
<key>my tag</key><value>my tag value and my invalid Character</Value>
và một XMLReader:
using (XmlReader reader = XmlReader.Create(new StringReader(xml)))
{
while (reader.Read())
{
//do my thing
}
}
tôi đã triển khai phương pháp CleanInvalidCharacters từ here nhưng là " & #xB "chưa được mã hóa, nó sẽ không bị xóa.
Lỗi đang được ném vào trình đọc.Read(); có ngoại lệ:
giá trị thập lục phân 0x0B, là ký tự không hợp lệ.
Làm cách nào để lọc các giá trị tiếp tục xuống dưới dòng? Tôi sẽ làm điều đó trong vòng lặp while. Mã hóa nó dưới dạng xml và xóa các ký tự không hợp lệ? – user1
Bạn có thể sử dụng phương pháp 'CleanInvalidCharacters' được đề cập trong bài đăng gốc của bạn trên các nút văn bản, giá trị phần tử và thuộc tính (khi bạn gặp chúng trong vòng lặp while). Nó sẽ hoạt động ngay từ khi các ký tự đã được giải mã. –