เขียนอักขระบางตัวเช่น '<' ในไฟล์ xml


106

ตั้งแต่เริ่มเขียนโปรแกรมฉันใช้อักขระพิเศษบางตัวเช่น "<-", "" << "เป็น string.xml ของฉันใน Eclipse ในขณะที่พัฒนาสำหรับ Android

ทั้งหมดทำงานได้ดีเป็นเวลาหนึ่งปี แต่วันนี้ฉันแค่ต้องการทำการเปลี่ยนแปลงเล็กน้อยและเริ่มแก้ไขไฟล์ xml ของฉัน

ตอนนี้ฉันได้รับข้อผิดพลาดในการคอมไพล์กับอักขระเหล่านี้เนื่องจาก eclipse เชื่อว่าเป็นส่วนหนึ่งของบล็อก xml

มีความคิดอย่างไรที่จะเพิ่มสัญลักษณ์ "<" ในไฟล์ xml ของฉัน

ขอบคุณมาก.


คุณหมายถึง xml หนี <= & lt; ฯลฯ ? หรืออะไรที่ซับซ้อนกว่านี้?
Rup

คำตอบ:


276

ใช้

&lt; สำหรับ <

&gt; สำหรับ >

&amp; สำหรับ &


1
ขอบคุณ ... ฉันรู้สึกโง่เพราะฉันกำลังมองหา "ใหญ่กว่า" เพราะภาษาอังกฤษของฉันไม่ดี ... หลังจากค้นหามากกว่าฉันพบคำตอบของฉัน .. ขอบคุณมาก btw.
Waza_Be

2
เป็นเอนทิตีอักขระ XML XML ไม่สนับสนุนเอนทิตีทั้งหมดที่ HTML ทำ
Tanner Swett

$ (เครื่องหมายดอลลาร์) คืออะไร?
Bugs เกิดขึ้น

25

อีกวิธีในการแทรกอักขระพิเศษตามคำแนะนำของมอส : ฉันจะเขียนอักขระและใน android strings.xml ได้อย่างไรโดยใช้คำจำกัดความ Unicode :

ตัวอย่าง:

<string name="item_unknown">\u003c Item Unknown \u003e</string>

ซึ่งมีอยู่ในสตริง:

< Item Unknown >

คำตอบที่ดีที่สุดในการแก้ปัญหา <and> บน android axml เนื่องจาก & lt และ & gt ยังไม่ได้รับการยอมรับว่าเป็นโทเค็นที่ถูกต้อง
jace

1
วิธีแก้ปัญหานั้นได้ผลสำหรับฉันดีกว่าข้างต้นมาก ขอบคุณ!
Jan Radzikowski

3

ฉันสะดุดกับคำถามนี้ขณะที่ฉันใช้มาร์กอัป HTML ในสตริงของฉัน

หากคุณอ้างถึงเอกสารของ Android String Resourcesในส่วน: "Styling with HTML markup" คุณจะเห็นว่าใน strings.xml คุณต้องใช้ & lt; สำหรับวงเล็บเปิด แต่คุณสามารถใช้แบ็กสแลชและวงเล็บปิดได้อย่างปลอดภัย ตัวอย่างเช่น:

<b>Text</b>

สามารถเขียนเป็น:

&lt;b>Text&lt;/b>

ใน strings.xml ของคุณ

หากใช้สตริง HTML นี้ในโค้ดของคุณคุณสามารถใช้:

Html.fromHtml( getResources().getString(R.string.yourHTMLString ) 

และผลลัพธ์จะเป็นสตริงตัวหนาของคุณ!

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.