2009-05-15 30 views

Trả lời

1

Xem 2.2 Characters trong "Extensible Markup Language (XML) 1.0 (Third Edition)".

Lưu ý rằng, ít nhất với .NET, nếu bạn đang sử dụng các API XML để làm việc với XML, thì bạn sẽ không phải lo lắng về điều này. Đó là lý do để không coi XML là văn bản.

+0

Tôi đồng ý với vị trí tài liệu, nhưng tôi không nghĩ rằng phần cụ thể đó là địa điểm chính xác để xem. Phần đó liệt kê các ký tự hợp lệ được phép trong "dòng văn bản", nếu bạn muốn. Về .NET và các thư viện, tôi không thể đồng ý nhiều hơn - nhưng trong trường hợp cụ thể này, tôi cần chỉnh sửa một tệp văn bản hiện có chứa XML. –

+0

Vì vậy, tại sao không sử dụng các API XML để xử lý tệp văn bản đó? –

+0

Tốt hơn là sử dụng phiên bản hiện tại của tài liệu: https://www.w3.org/TR/xml/ – albert

5

Theo (2) current recommendation, đặc biệt liên quan đến character data and Markup, họ là (1) dấu và (&), khung bên trái góc (<), phải khung góc (>) và cả hai single-quote (') và đôi -quote (").

+1

Tôi đồng ý với phần tài liệu cụ thể. Tuy nhiên, không phải tất cả các thuộc tính đó "phải" được thoát. Bạn có thể chỉnh sửa để làm rõ không? –

+1

-1 Không có yêu cầu để thoát '>', cũng không phải '' 'hoặc' "' (không được sử dụng để phân định thuộc tính. – Phrogz

48

Đây là định nghĩa của what is allowed in an attribute value.

'"' ([^<&"] | Reference)* '"' | "'" ([^<&'] | Reference)* "'" 

Vì vậy, bạn không thể có:

  • nhân vật tương tự mà mở/đóng các giá trị thuộc tính (hoặc' hoặc ")
  • một dấu và khỏa thân (& phải &amp;)
  • khung bên trái (< phải là &lt;)

Bạn cũng không nên sử dụng bất kỳ characters nào hoàn toàn không hợp pháp ở bất kỳ đâu trong tài liệu XML (chẳng hạn như nguồn cấp dữ liệu biểu mẫu, v.v.).

Các vấn đề liên quan