এক্সএমএলে ডাবল উদ্ধৃতি চরিত্রটি এড়িয়ে চলুন


101

এক্সএমএলে ডাবল উদ্ধৃতিটির জন্য কি পালানোর অক্ষর রয়েছে? আমি এর মতো ট্যাগ লিখতে চাই:

<parameter name="Quote = " ">

তবে যদি আমি "রাখি, তার মানে স্ট্রিংটি শেষ হয়েছে I আমার এর মতো কিছু দরকার (সি ++):

printf("Quote = \" ");

ডাবল উদ্ধৃতি থেকে বাঁচার আগে কি কোনও চরিত্র লিখতে হবে?





সংক্ষিপ্ত উত্তর: &quot; গল্পের বাকি ...
kjhughes

উত্তর:



118

এখানে সাধারণ অক্ষরগুলি যা এক্সএমএল এড়ানো দরকার, ডাবল উদ্ধৃতি দিয়ে শুরু:

  1. ডাবল কোট ( ") এ পালানো হয়েছে&quot;
  2. এম্পারস্যান্ড ( &) এ পালানো হয়েছে&amp;
  3. একক উদ্ধৃতি ( ') এ পালানো হয়েছে&apos;
  4. এর চেয়ে কম ( <) পালিয়ে যায়&lt;
  5. এর চেয়ে বড় ( >) পালিয়ে যায়&gt;

3
ত্রুটিপূর্ণ; সমেত কোনও বৈধ এক্সএমএল অক্ষর নয়। এটি একটি বৈধ এইচটিএমএল অক্ষর - যা এসজিএমএল এবং এক্সএমএলের একটি সুপারসেট।
স্টিফান স্টেইগার

যদিও এটি একটি বৈধ পয়েন্ট, বেশিরভাগ আধুনিক এক্সএমএল পার্সার্স যার সাথে আমি কাজ করেছি তা এটিকে বৈধ চরিত্র হিসাবে গ্রহণ করছে।
দেরিউজ জি Jagielski

& quot; স্ট্রিংটি ডাবল কোট দিয়ে ঘিরে থাকলে অ্যান্ড্রয়েড দ্বারা সঠিকভাবে ব্যাখ্যা করা যায় না। এক্ষেত্রে ই-ম্যাক্স উত্তরটিই কাজ করে।
সফটলিয়ন

@ স্টেফানস্টেইগার এটি এই তালিকায় রয়েছে
অরেঞ্জডগ

@ ডারিউস জি। জাগিয়েলস্কি: যদিও আধুনিক এক্সএমএল পার্সারের বিরুদ্ধে আমার কাছে কিছুই নেই - আপনি যদি কোনও ডাটাবেজে এক্সএমএল নিয়ে কাজ করেন (যেমন এমএস / পিজি), আপনি দেখতে পাবেন যে সফ্টওয়্যারটির প্রতিটি অংশ আধুনিক এক্সএমএল পার্সার ব্যবহার করে না। বিশেষত যখন এটি জটিল দশক পুরানো সফ্টওয়্যার। এটি বলেছিল, প্রত্যেকে যদি একটি আধুনিক এক্সএমএল পার্সার ব্যবহার করে তবে এটি ভাল জিনিস হবে। তবে, যদি কোডটি পুরানো জটিল সফ্টওয়্যারটিতে গভীরভাবে সংহত করা হয় তবে এটি প্রতিস্থাপন করা খুব কঠিন হয়ে পড়ে (যখন 100% পিছনের সামঞ্জস্য বজায় রেখে)) সি এর ডাউনসাইড বা নির্ভরতা ইনজেকশন ব্যবহার না করার জন্য, তাই বলা যায়।
স্টিফান স্টেইগার

27

অন্যরা এই ক্ষেত্রে সুনির্দিষ্টভাবে পালানো কীভাবে পরিচালনা করবেন সে সম্পর্কে জবাব দিয়েছেন।

এর বিস্তৃত উত্তর হ'ল এটি নিজে করার চেষ্টা করা নয়। একটি এক্সএমএল এপিআই ব্যবহার করুন - অস্তিত্বের প্রতিটি আধুনিক প্রোগ্রামিং প্ল্যাটফর্মের জন্য প্রচুর পরিমাণে উপলব্ধ।

এক্সএমএল এপিআইগুলি আপনার জন্য স্বয়ংক্রিয়ভাবে এই জাতীয় জিনিসগুলি পরিচালনা করবে , ভুল হওয়া খুব শক্ত করে তোলে । আপনি নিজে একটি এক্সএমএল এপিআই না লিখলে আপনার এই জাতীয় বিবরণ নিয়ে খুব কমই চিন্তা করা উচিত।


11
আমি একমত যে বলতে পারি না। এটা ভাবতে বোকামি বলে মনে হচ্ছে যে আমাদের এপ্রেট্র্যাক্ট করার জন্য আমাদের এপিআইয়ের উপর এত নির্ভরশীল হওয়া উচিত যাতে এক্সএমএল কীভাবে পড়তে এবং লিখতে হয় তাও আমাদের বুঝতে হবে না। আপনি যখন কোনও ত্রুটিযুক্ত দস্তাবেজটি খাওয়ান এবং এটি ফুরিয়ে যায় তখন থা এক্সএমএল এপিআই সম্ভবত আপনাকে খুব বেশি সহায়তা করবে না। কেউ এটি লোড করার জন্য ডেটা ঠিক করতে হবে।
ক্রিস্টোফার পেইন্টার 13

@ ক্রিস্টোফারপেইন্টার এক্সএমএল স্ট্যান্ডার্ডের আকার দিলে আমার সন্দেহ হয় যে এমন অনেক লোক আছেন যারা আসলে এটি বোঝে। এখন অনেক আছে যারা ভাবেন যে তারা করেন তবে সত্যই তারা তা করেন না।
মনিকা

2
ভাল, আপনি কোথাও শুরু করতে হবে। আমাদের শিল্পের কোর্সটি আমরা কেবলমাত্র অভিযোগ করেছিলাম যে এক্সএমএল সাফ হয় এবং জেএসএনের মতো অন্য কিছু দিয়ে শুরু করে। তারপরে প্রক্রিয়াটি পুনরাবৃত্তি করে।
ক্রিস্টোফার পেইন্টার

14

একটি পুরানো, প্রায়শই জিজ্ঞাসিত প্রশ্নের নতুন, উন্নত উত্তর ...

এক্সএমএলে ডাবল উক্তিটি কখন পালাতে হবে

ডাবল উদ্ধৃতি ( ") অব্যাহতি ছাড়াই প্রদর্শিত হতে পারে :

  • এক্সএমএল পাঠ্য সামগ্রীতে:

    <NoEscapeNeeded>He said, "Don't quote me."</NoEscapeNeeded>
  • এক্সএমএলটিতে একক উদ্ধৃতি ( ') দ্বারা সীমাবদ্ধ বৈশিষ্ট্যগুলি :

    <NoEscapeNeeded name='Pete "Maverick" Mitchell'/>

    দ্রষ্টব্য: একক উদ্ধৃতি ( ') এ স্যুইচিংয়ের জন্য কোনও পালানোর দরকার নেই:

    <NoEscapeNeeded name="Pete 'Maverick' Mitchell"/>

ডাবল উদ্ধৃতি ( ") অবশ্যই পালাতে হবে :

  • এক্সএমএলগুলিতে ডাবল উদ্ধৃতি দ্বারা সীমিত করা:

    <EscapeNeeded name="Pete &quot;Maverick&quot; Mitchell"/>

শেষের সারি

ডাবল উদ্ধৃতি ( ") অবশ্যই &quot;খুব সীমিত প্রসঙ্গে এক্সএমএল হিসাবে পালাতে হবে ।


7

না কোনও পালানোর চরিত্র নেই, পরিবর্তে আপনি চরিত্রটি উপস্থাপন করতে &quot;বা এমনকি ব্যবহার করতে পারেন ।<![CDATA["]]>"



2

সি ++ এ আপনি এসেক্সএক্সএমএল এটিএল এপিআই ব্যবহার করতে পারেন। এটি বিশেষ চরগুলি পরিচালনা করার সঠিক উপায় ...


1

আপনি "ইউ" এবং তারপরে অক্ষরের ইউনিকোড মান অনুসরণ করে ব্যাকস্ল্যাশ ব্যবহার করার চেষ্টা করতে পারেন, উদাহরণস্বরূপ ডাবল উদ্ধৃতিটির ইউনিকোড মানটি

"-> ইউ + 0022

অতএব আপনি যদি এন্ড্রয়েডে এক্সএমএলে পাঠ্যের অংশ হিসাবে সেট করে থাকেন তবে এটি দেখতে এমন কিছু দেখাচ্ছে,

<TextView
     android:layout_width="match_parent"
     android:layout_height="match_parent"
     android:text=" \u0022 Showing double quotes \u0022 "/>

এটি টেক্সটভিউতে মোটামুটি এই জাতীয় কোনও পাঠ্য তৈরি করবে

"ডাবল উদ্ধৃতি দেখানো হচ্ছে"

আপনি বেশিরভাগ চিহ্ন এবং অক্ষরের ইউনিকোডটি এখানে পাবেন www.unicode-table.com/en


আপনি এখানে বেশিরভাগ চিহ্ন এবং অক্ষরের ইউনিকোড পেতে পারেন ইউনিকোড
-
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.