অন্যরা ইতিমধ্যে উত্তর হিসাবে তারা পৃথক।
static void Main(string[] args)
{
string s1 = null;
string s2 = string.Empty;
string s3 = "";
Console.WriteLine(s1 == s2);
Console.WriteLine(s1 == s3);
Console.WriteLine(s2 == s3);
}
results:
false - since null is different from string.empty
false - since null is different from ""
true - since "" is same as string.empty
খালি স্ট্রিং বনাম নাল স্ট্রিং পরিচালনার ক্ষেত্রে সমস্যাটি হয়ে উঠছে যখন আপনি হয় এটি একটি ফ্ল্যাট ফাইলে অবিরত রাখার বা যোগাযোগের মাধ্যমে তা স্থানান্তরিত করার প্রয়োজন হয়, সুতরাং আমি এই পৃষ্ঠায় ভিজিটরদের জন্য একটি দুর্দান্ত সমাধান দেওয়ার জন্য এটি দরকারী হতে পারে find যে বিশেষ সমস্যা।
স্ট্রিংগুলিকে কোনও ফাইল বা যোগাযোগের মধ্যে সংরক্ষণের উদ্দেশ্যে:
আপনি সম্ভবত স্ট্রিংটিকে বাইটে রূপান্তর করতে চান।
আমি প্রস্তাবিত একটি ভাল অনুশীলন হ'ল আপনার রূপান্তরিত স্ট্রিংয়ে শিরোনাম বাইটের 2 টি বিভাগ যুক্ত করা।
বিভাগ 1 - মেটা তথ্য যা 1 বাইটে সংরক্ষণ করা হয় এবং পরবর্তী বিভাগটির দৈর্ঘ্য বর্ণনা করে।
বিভাগ 2 - সংরক্ষণ করার জন্য স্ট্রিংয়ের দৈর্ঘ্য ধারণ করে।
উদাহরণ:
স্ট্রিং "abcd" - সরলকরণের জন্য আমি এএসসিআইআই এনকোডার ব্যবহার করে এটি রূপান্তর করব এবং {65,66,67,68} পাব}
গণনা সেগমেন্ট 2 4 প্রদান করবে - সুতরাং 4 বাইট রূপান্তরিত স্ট্রিংয়ের দৈর্ঘ্য।
গণনা সেগমেন্ট 1 1 প্রদান করবে - রূপান্তরিত স্ট্রিং তথ্যের দৈর্ঘ্য তথ্য ধরে রাখার জন্য যেমন 1 বাইট ব্যবহার করা হয়েছিল (যা 4 ছিল, অর্থাত যদি এটি 260 হত তবে আমি 2 পেয়ে যাব)
বাইটের নতুন স্ট্রাইপটি এখন {1,4,65,66,67,68 be হবে যা কোনও ফাইলে সংরক্ষণ করা যায়।
বিষয়টির ক্ষেত্রে সুবিধাটি হ'ল যদি আমার সংরক্ষণের জন্য একটি খালি স্ট্রিং থাকে তবে আমি 0 এর দৈর্ঘ্যের মধ্যে খালি বাইটগুলির বর্জন থেকে পাই এবং সেগমেন্টগুলি গণনা করার পরে আমার কাছে {1,0 having থাকবে যা হতে পারে সংরক্ষণ করা হয়েছে এবং পরে লোড করা হয়েছে এবং খালি স্ট্রিংয়ে ফিরে ব্যাখ্যা করা হবে। অন্যদিকে আমার স্ট্রিংয়ে যদি আমার নাল মান থাকে তবে আমি সংরক্ষণ করতে আমার বাইট অ্যারে হিসাবে কেবলমাত্র {0 having রেখে শেষ করব এবং আবার যখন লোড করা হয় তখন নাল থেকে ফিরে ব্যাখ্যা করা যায়।
আরও একাধিক সুবিধা রয়েছে যেমন আপনি একাধিক স্ট্রিং জ্যাগ করে তবে কী আকারটি লোড করতে হবে তা জেনে বা knowing
বিষয়টিতে ফিরে আসুন - এটি .. ঠিক একই ধরণের স্ট্যাকটিকে দূষিত করে যেমন বর্ণিত একই প্রিন্সিপালগুলি কোনও সিস্টেমের দ্বারা শূন্য থেকে শূন্যস্থানকে পৃথক করতে ব্যবহার করা হয় .. সুতরাং হ্যাঁ স্ট্রিং E এমপিটি নাল থেকে বেশি স্মৃতি গ্রহণ করে, যদিও আমি না করতাম এটিকে দূষণ বলুন .. এটি আরও 1 বাইট।