এর নম্বর থেকে ইউনিকোড অক্ষর তৈরি করা হচ্ছে


114

আমি জাভাতে একটি ইউনিকোড অক্ষর প্রদর্শন করতে চাই। আমি যদি এটি করি তবে এটি ঠিক কাজ করে:

String symbol = "\u2202";

প্রতীক "∂" এর সমান। এটাই সেটা যা আমি চাই.

সমস্যাটি হ'ল আমি ইউনিকোড নম্বর জানি এবং সেখান থেকে ইউনিকোড প্রতীক তৈরি করা দরকার। আমি স্পষ্ট জিনিসটি চেষ্টা করেছি (আমার কাছে):

int c = 2202;
String symbol =  "\\u" + c;

তবে এই ক্ষেত্রে, চিহ্নটি "2 u2202" এর সমান। এটাই আমি চাই না।

আমি কীভাবে প্রতীকটি তৈরি করতে পারি যদি আমি এর ইউনিকোড নম্বর জানি (তবে কেবল রান-টাইমে --- আমি প্রথম উদাহরণের মতো হার্ড-কোড করতে পারি না)?


1
প্রথম ব্যাকস্ল্যাশ সরিয়ে ফেলুন, যাতে ব্যাকস্ল্যাশ এড়ানোর পরিবর্তে এটি ইউনিকোড ক্রম থেকে রক্ষা পায়। "\\" ব্যবহার করে জাভাকে জানায় যে আপনি "\" মুদ্রণ করতে চান, ইউনিকোডের অক্ষরগুলির জন্য এটি প্রস্থানের ক্রম হিসাবে অতীতে ব্যবহার করবেন না। আপনি যদি প্রথমটি সরিয়ে ফেলেন তবে এটি ইউনিকোড ক্রম থেকে পালিয়ে যাবে এবং দ্বিতীয় ব্যাকস্ল্যাশ নয়। কমপক্ষে, এটি আমার জ্ঞানের সেরাটি হবে।
মনিকা এর মামলা মোকদ্দমা করুন

উত্তর:


73

শুধু তোমার নিক্ষেপ intএকটি থেকে char। আপনি এটি Stringব্যবহার করে রূপান্তর করতে পারেন Character.toString():

String s = Character.toString((char)c);

সম্পাদনা করুন:

কেবল মনে রাখবেন যে জাভা সোর্স কোডে বিস্কুট সিকোয়েন্সগুলি ( \uবিটস) এইচএক্সে রয়েছে, সুতরাং আপনি যদি একটি পালানোর ক্রম পুনরুত্পাদন করার চেষ্টা করছেন তবে আপনার মতো কিছু প্রয়োজন হবে int c = 0x2202


3
এটি কেবল আমাকে একটি বর্গ বাক্স দিচ্ছে, ࢚। এটি আমাকে "∂" দিচ্ছে না।
পল রেইনার্স

19
বিপদ, উইল রবিনসন! ভুলে যাবেন না যে ইউনিকোড কোড পয়েন্টগুলি প্রয়োজনীয়ভাবে কোনও চরে ফিট হবে না । সুতরাং আপনার cপূর্বের আগে অবশ্যই নিখুঁতভাবে নিশ্চিত হওয়া দরকার যে আপনার মান 0x10000 এর চেয়ে ছোট, অন্যথায় এই পদ্ধতিটি ভয়াবহভাবে ভেঙে যাবে।
ডেভিড

1
@ নিক হার্টলি দুঃখিত, অনুসরণ করবেন না --- আপনি 100x এর জন্য 0x10000 ভুল লিখেছেন?
ডেভিড

10
সে কারণেই আমি 'নীচে' বলেছি! এবং আমি জোর অক্ষর শুধুমাত্র 0xffff পর্যন্ত যেতে সত্ত্বেও, ইউনিকোড কোড পয়েন্ট 0xfffff পর্যন্ত যেতে জোর করা প্রয়োজন। জাভা ডিজাইনের পরে ইউনিকোডের মানটি বদলে গেল। আজকাল জাভা চরগুলি প্রযুক্তিগতভাবে ইউটিএফ -১ techn শব্দ ধারণ করে, ইউনিকোড কোড পয়েন্ট নয়, এবং আপনার অ্যাপ্লিকেশনটি একটি বিদেশী স্ক্রিপ্টের মুখোমুখি হলে এটিকে ভুলে যাওয়া ভয়াবহ বিরতি সৃষ্টি করবে।
ডেভিড

3
@ ডেভিডজিভেন এর জন্য ধন্যবাদ Java chars go up to 0xFFFF। আমি যে জানি না।
টনি এনিস

128

আপনি যদি কোনও ইউটিএফ -16 এনকোডেড কোড ইউনিট পেতে চান তবে আপনি charপূর্ণসংখ্যাটি পার্স করতে পারেন এবং অন্যদের পরামর্শ অনুসারে এটিকে কাস্ট করতে পারেন।

আপনি যদি সমস্ত কোড পয়েন্ট সমর্থন করতে চান তবে ব্যবহার করুন Character.toChars(int)। এটি এমন কেসগুলি পরিচালনা করবে যেখানে কোড পয়েন্টগুলি একক charমানের সাথে ফিট করে না ।

ডক বলেছেন:

নির্দিষ্ট অক্ষরটিকে (ইউনিকোড কোড পয়েন্ট) রূপান্তর করে তার চর অ্যারেতে সঞ্চিত এটির UTF-16 উপস্থাপনায়। যদি নির্দিষ্ট কোড পয়েন্টটি একটি বিএমপি (বেসিক বহুভাষিক প্লেন বা প্লেন 0) মান হয় তবে ফলাফল প্রাপ্ত অ্যারেটির কোডপয়েন্টের সমান মান থাকে। যদি নির্দিষ্ট কোড পয়েন্টটি পরিপূরক কোড পয়েন্ট হয় তবে ফলিত চর অ্যারেতে সংশ্লিষ্ট সারোগেট জুটি থাকে।


যদিও এটি একটি আরও সাধারণ সমাধান এবং অনেক ক্ষেত্রে আপনার গ্রহণযোগ্য উত্তরের উপর এটি ব্যবহার করা উচিত, স্বীকৃত উত্তরটি পৌল যে নির্দিষ্ট সমস্যার জন্য জিজ্ঞাসা করেছিলেন, তার একটি নিবিড় মিল।
জোহেম কুয়েজ্পার্স

2
প্রথমত, ধন্যবাদ! স্কালায়, আমি এখনও একটির চেয়ে বড় অক্ষরগুলি বিশ্লেষণ করতে অক্ষম charscala> "👨‍🎨".map(_.toInt).flatMap((i: Int) => Character.toChars(i)).map(_.toHexString)দেয় res11: scala.collection.immutable.IndexedSeq[String] = Vector(f468, 200d, f3a8) এই ইমোজি, "পুরুষ গায়ক", তিন কোড পয়েন্ট সঙ্গে সম্বোধন করা হয়েছে U+1f468, U+200dএবং U+1f3a8। সবচেয়ে উল্লেখযোগ্য সংখ্যাটি অনুপস্থিত। আমি এটি একটি বিটওয়্যার বা ( স্ট্যাকওভারফ্লো.com/ a/ 2220476 / 1007926 ) দিয়ে যুক্ত করতে পারি, তবে কোন পার্স করা অক্ষরগুলি কেটে ফেলা হয়েছে তা কীভাবে নির্ধারণ করা যায় তা জানি না। ধন্যবাদ!
পিটার বেকিচ

1
@ জোহেমকুইজ্পার্স আমি স্বীকার করি না যে "গৃহীত উত্তর নির্দিষ্ট সমস্যার সাথে একটি নিকটতম মিল" । ওপি স্পষ্টভাবে জিজ্ঞাসা করেছিল "আমি যদি এর ইউনিকোড নম্বর জানি তবে আমি কীভাবে প্রতীকটি তৈরি করব ?" , এবং সেই "ইউনিকোড নম্বর" বিএমপির বাইরে থাকলে গৃহীত উত্তরটি কাজ করতে পারে না । উদাহরণস্বরূপ, গৃহীত উত্তরটি বৈধ কোডপয়েন্ট 0x1040 সি এর জন্য ব্যর্থ হয় কারণ এটি এসএমপিতে রয়েছে। এটি একটি দুর্বল উত্তর, এবং এটি সংশোধন বা মোছা উচিত।
স্কোমিসা

@ স্পোমিসা ওপিএস দৃশ্যটি হেক্সাডেসিমাল ইউনিকোড এস্কেপ ক্রমের প্রতিনিধিত্বের মধ্যে সীমাবদ্ধ। আপনার যদি এমন কোনও চরিত্র থাকে যা সারোগেট জুটি হিসাবে এনকোড করা উচিত, তবে এটি এই পালানোর ক্রমগুলিতে প্রতিফলিত হয়, তাই এটি এখনও শেষ পর্যন্ত কার্যকর হয়। যেমনটি আমি বলেছি, এটি আরও সাধারণ সমাধান এবং আপনার এটি ব্যবহার করা উচিত।
জোহেম কুয়েজ্পার

20

এখানে অন্যান্য উত্তরগুলি কেবলমাত্র ইউ + এফএফএফএফ পর্যন্ত চূড়ান্তভাবে ইউনিকোডকে সমর্থন করে (উত্তরগুলি চরের কেবলমাত্র একটি উদাহরণ দিয়ে কাজ করে) বা কীভাবে আসল প্রতীকটি পাবেন (উত্তরগুলি চরিত্র.টোচারে থামানো উচিত) বা ভুল পদ্ধতি ব্যবহার করে বলবেন না এর পরে), তাই আমার উত্তরটি এখানেও যুক্ত করুন।

পরিপূরক কোড পয়েন্টগুলিকে সমর্থন করার জন্যও এটি করা দরকার:

// this character:
// http://www.isthisthingon.org/unicode/index.php?page=1F&subpage=4&glyph=1F495
// using code points here, not U+n notation
// for equivalence with U+n, below would be 0xnnnn
int codePoint = 128149;
// converting to char[] pair
char[] charPair = Character.toChars(codePoint);
// and to String, containing the character we want
String symbol = new String(charPair);

// we now have str with the desired character as the first item
// confirm that we indeed have character with code point 128149
System.out.println("First code point: " + symbol.codePointAt(0));

কোন রূপান্তর পদ্ধতিগুলি কাজ করে এবং কোনটি ব্যবহার করে না সে সম্পর্কেও আমি একটি দ্রুত পরীক্ষা করেছি

int codePoint = 128149;
char[] charPair = Character.toChars(codePoint);

String str = new String(charPair, 0, 2);
System.out.println("First code point: " + str.codePointAt(0));    // 128149, worked
String str2 = charPair.toString();
System.out.println("Second code point: " + str2.codePointAt(0));  // 91, didn't work
String str3 = new String(charPair);
System.out.println("Third code point: " + str3.codePointAt(0));   // 128149, worked
String str4 = String.valueOf(codePoint);
System.out.println("Fourth code point: " + str4.codePointAt(0));  // 49, didn't work
String str5 = new String(new int[] {codePoint}, 0, 1);
System.out.println("Fifth code point: " + str5.codePointAt(0));   // 128149, worked

কীভাবে এটি ওয়ান-লাইনার হিসাবে কাজ করে না? new String(Character.toChars(121849));Eclipse কনসোলে বিরতি, তবে তিন-লাইনের সংস্করণ কাজ করে।
Noumenon

@Noumenon ইস্যু পুনর্গঠন করতে পারবে না, আমার জন্য সমানভাবে কাজ করে জরিমানা
Eis

আরও এগিয়ে যাওয়ার জন্য কুডোস। জন্য str4অ্যাসাইনমেন্ট করা উচিত নয় codeহতে codePointপরিবর্তে?
স্কোমিসা

6

মনে রাখবেন যে charএটি একটি অবিচ্ছেদ্য প্রকার, এবং এভাবে একটি পূর্ণসংখ্যা মান এবং পাশাপাশি একটি ধ্রুবক ধ্রুবক দেওয়া যেতে পারে।

char c = 0x2202;//aka 8706 in decimal. \u codepoints are in hex.
String s = String.valueOf(c);

এটি কেবল আমাকে একটি বর্গ বাক্স দিচ্ছে, ࢚। এটি আমাকে "∂" দিচ্ছে না।
পল রেইনার্স

3
এটি কারণ 2202 আপনি অনুসন্ধান করেছিলেন তা নয় int। আপনি 0x2202 খুঁজছিলেন। আমার ভুল. যাই হোক না কেন, আপনি intযে কোড পয়েন্টটি সন্ধান করছেন charতা Stringযদি থাকে তবে আপনি এটি কেবল একটিতে কাস্ট করতে পারেন এবং এটি ব্যবহার করতে পারেন ( যদি আপনি চান তবে এটি তৈরি করতে)।
আইএলএমটিটান

6

এই আমার জন্য ভাল কাজ করে।

  String cc2 = "2202";
  String text2 = String.valueOf(Character.toChars(Integer.parseInt(cc2, 16)));

এখন টেক্সট 2 এ ∂ থাকবে ∂


4
String st="2202";
int cp=Integer.parseInt(st,16);// it convert st into hex number.
char c[]=Character.toChars(cp);
System.out.println(c);// its display the character corresponding to '\u2202'.

1
এই পোস্টটি প্রশ্নের উত্তর দিতে পারে, আপনি কি করছেন সে সম্পর্কে একটি ব্যাখ্যা প্রয়োজন; আপনার উত্তরের গুণমান এবং পাঠযোগ্যতার উন্নতি করতে
আজিল ও।

1
ধন্যবাদ, এটি সত্যিই আমাকে সাহায্য করেছে! সূক্ষ্মভাবে কাজ করে এবং এখানে অন্যান্য সমাধানের চেয়ে সহজ (সত্যিই, জাভা লোকেরা জিনিসগুলিকে অতিরিক্ত জটিল করতে পছন্দ করে)।
পার্সিকার

2

আপনি এটি এইভাবে করেন:

int cc = 0x2202;
char ccc = (char) Integer.parseInt(String.valueOf(cc), 16);
final String text = String.valueOf(ccc);

এই সমাধানটি আর্নে বাজহাজের।


আপনি কি এই কাজ বলছেন? যদি তা হয় তবে এটি কাজ করে কারণ আপনি দু'হাজার, দু'শো ও দু'জনকে 0x2202 হিসাবে পুনরায় সংজ্ঞায়িত করছেন যা অবশ্যই এক জিনিস নয়।
dty

4
ওহ, না, থাক! ইউনিকোড মান (জাভা উত্সে আপনি পালানোর ক্রমগুলি) হেক্স হ'ল! সুতরাং এটি ঠিক। আপনি শুধু এই বলে সবাইকে বিভ্রান্ত করেছেন int c = 2202, যা ভুল! এর থেকে আরও ভাল সমাধান বলা সহজ যে int c = 0x2202কোন স্ট্রিং ইত্যাদির মধ্য দিয়ে যাওয়া আপনাকে বাঁচাতে পারে
dty

3
+1 @ ডিটি: মিডল char ccc...লাইনের জন্য কোনও কল নেই । কেবলমাত্র int cc = 0x2202;এবং তারপরেfinal String text=String.valueOf(cc);
অ্যান্ড্রু কুনস

2

যদিও এটি একটি পুরানো প্রশ্ন, জাভা ১১-এ এটি করার একটি খুব সহজ উপায় রয়েছে যা আজ প্রকাশিত হয়েছিল: আপনি ক্যারেক্টার. টো স্ট্রিং () এর একটি নতুন ওভারলোড ব্যবহার করতে পারেন :

public static String toString​(int codePoint)

Returns a String object representing the specified character (Unicode code point). The result is a string of length 1 or 2, consisting solely of the specified codePoint.

Parameters:
codePoint - the codePoint to be converted

Returns:
the string representation of the specified codePoint

Throws:
IllegalArgumentException - if the specified codePoint is not a valid Unicode code point.

Since:
11

যেহেতু এই পদ্ধতিটি কোনও ইউনিকোড কোড পয়েন্টকে সমর্থন করে, তাই ফিরে আসা স্ট্রিংয়ের দৈর্ঘ্য অগত্যা 1 নয়।

প্রশ্নে দেওয়া উদাহরণের জন্য প্রয়োজনীয় কোডটি সহজভাবে:

    int codePoint = '\u2202';
    String s = Character.toString(codePoint); // <<< Requires JDK 11 !!!
    System.out.println(s); // Prints ∂

এই পদ্ধতির বিভিন্ন সুবিধা উপলব্ধ করা হয়:

  • এটি কোনও ইউনিকোড কোড পয়েন্টের জন্য কাজ করে যা কেবলমাত্র এটি ব্যবহার করে পরিচালনা করা যায় char
  • এটি সংক্ষিপ্ত এবং কোডটি কী করছে তা বোঝা সহজ।
  • এটি মানটির চেয়ে স্ট্রিং হিসাবে মান দেয় char[]যা আপনি যা চান তা প্রায়শই হয়। আপনি যদি কোড পয়েন্টটি ফেরত চান তবে ম্যাকডোভেলের পোস্ট করা উত্তরটি উপযুক্ত char[]

এই উত্তর হিসাবে এটি সম্পর্কে কিছু অতিরিক্ত স্পষ্টতা আমার কাছে তাড়াতাড়ি স্পষ্ট করে দিয়েছে কীভাবে কোডপয়েন্ট ভেরিয়েবলটি তৈরি করবেন। এখানে সিনট্যাক্সটি int codePoint = 0x2202;String s = Character.toString(codePoint); // <<< Requires JDK 11 !!!System.out.println(Character.toString(0x2202)); // Prints ∂
হ'ল

1

নীচের কোডটি জাপানি ভাষায় "হতে" শব্দের জন্য 4 টি ইউনিকোড অক্ষর (দশমিক দ্বারা উপস্থাপিত) লিখবে। হ্যাঁ, জাপানি ভাষায় "be" ক্রিয়াটির 4 টি অক্ষর রয়েছে! অক্ষরের মান দশমিক হয় এবং এটি স্ট্রিং [] এর অ্যারেতে পড়েছে - উদাহরণস্বরূপ স্প্লিট ব্যবহার করে। আপনি অক্টাল বা হেক্স থাকে, তাহলে parseInt পাশাপাশি একটি র্যাডিক্স নিতে।

// pseudo code
// 1. init the String[] containing the 4 unicodes in decima :: intsInStrs 
// 2. allocate the proper number of character pairs :: c2s
// 3. Using Integer.parseInt (... with radix or not) get the right int value
// 4. place it in the correct location of in the array of character pairs
// 5. convert c2s[] to String
// 6. print 

String[] intsInStrs = {"12354", "12426", "12414", "12377"}; // 1.
char [] c2s = new char [intsInStrs.length * 2];  // 2.  two chars per unicode

int ii = 0;
for (String intString : intsInStrs) {
    // 3. NB ii*2 because the 16 bit value of Unicode is written in 2 chars
    Character.toChars(Integer.parseInt(intsInStrs[ii]), c2s, ii * 2 ); // 3 + 4
    ++ii; // advance to the next char
}

String symbols = new String(c2s);  // 5.
System.out.println("\nLooooonger code point: " + symbols); // 6.
// I tested it in Eclipse and Java 7 and it works.  Enjoy

1

এখানে থেকে ইউনিকোড চরগুলি মুদ্রণ করতে একটি ব্লক এখানে দেওয়া \u00c0হয়েছে \u00ff:

char[] ca = {'\u00c0'};
for (int i = 0; i < 4; i++) {
    for (int j = 0; j < 16; j++) {
        String sc = new String(ca);
        System.out.print(sc + " ");
        ca[0]++;
    }
    System.out.println();
}

0

দুর্ভাগ্যক্রমে, প্রথম মন্তব্যে উল্লিখিত একটি প্রতিক্রিয়া অপসারণ (নিউবিডুডল) ভাল ফলাফলের দিকে নিয়ে যায় না। বেশিরভাগ (সমস্ত না থাকলে) আইডিই সিন্ট্যাক্স ত্রুটি জারি করে। এর কারণটি হ'ল, জাভা এস্কেপড ইউনিকোড ফর্ম্যাটটি সিনট্যাক্স "\ uXXXX" প্রত্যাশা করে, যেখানে XXXX 4 টি হেক্সাডেসিমাল ডিজিট, যা বাধ্যতামূলক। এই স্ট্রিংটিকে টুকরো টুকরো থেকে ভাঁজ করার চেষ্টা ব্যর্থ হয়েছে। অবশ্যই, "\ u" "\\ u" এর মতো নয়। প্রথম বাক্য গঠনটির অর্থ 'ইউ' পলায়ন, দ্বিতীয়টির অর্থ পালানো ব্যাকল্যাশ (যার পিছনে রয়েছে) এর পরে 'ইউ'। আশ্চর্যের বিষয়, অ্যাপাচি পৃষ্ঠাগুলিতে ইউটিলিটি উপস্থাপন করা হয়েছে, যা ঠিক এই আচরণ করে। কিন্তু বাস্তবে, এটা অনুকরণমূলক ইউটিলিটি Escape । অ্যাপাচি এর নিজস্ব কিছু ইউটিলিটি রয়েছে (আমি সেগুলি পরীক্ষা করিনি), যা আপনার জন্য এই কাজটি করে। হতে পারে, এটি এখনও যে হয় না, আপনি কি চান।তবে এই ইউটিলিটি 1 এর সমাধানের জন্য ভাল পদ্ধতির রয়েছে। উপরে বর্ণিত সংমিশ্রণের সাথে (মেরাআনাম জোকার)। আমার সমাধানটি এই এসকেপড মিমিক স্ট্রিংটি তৈরি করে তারপরে এটিকে আবার ইউনিকোডে রূপান্তরিত করতে পারে (বাস্তব থেকে অব্যাহত ইউনিকোডের সীমাবদ্ধতা এড়াতে)। আমি এটি পাঠ্য অনুলিপি করার জন্য ব্যবহার করেছি, সুতরাং এটি সম্ভব, ইউনকোড পদ্ধতিতে '\\\\ u' ব্যতীত '' u 'ব্যবহার করা ভাল। চেষ্টা করে দেখুন

  /**
   * Converts character to the mimic unicode format i.e. '\\u0020'.
   * 
   * This format is the Java source code format.
   * 
   *   CharUtils.unicodeEscaped(' ') = "\\u0020"
   *   CharUtils.unicodeEscaped('A') = "\\u0041"
   * 
   * @param ch  the character to convert
   * @return is in the mimic of escaped unicode string, 
   */
  public static String unicodeEscaped(char ch) {
    String returnStr;
    //String uniTemplate = "\u0000";
    final static String charEsc = "\\u";

    if (ch < 0x10) {
      returnStr = "000" + Integer.toHexString(ch);
    }
    else if (ch < 0x100) {
      returnStr = "00" + Integer.toHexString(ch);
    }
    else if (ch < 0x1000) {
      returnStr = "0" + Integer.toHexString(ch);
    }
    else
      returnStr = "" + Integer.toHexString(ch);

    return charEsc + returnStr;
  }

  /**
   * Converts the string from UTF8 to mimic unicode format i.e. '\\u0020'.
   * notice: i cannot use real unicode format, because this is immediately translated
   * to the character in time of compiling and editor (i.e. netbeans) checking it
   * instead reaal unicode format i.e. '\u0020' i using mimic unicode format '\\u0020'
   * as a string, but it doesn't gives the same results, of course
   * 
   * This format is the Java source code format.
   * 
   *   CharUtils.unicodeEscaped(' ') = "\\u0020"
   *   CharUtils.unicodeEscaped('A') = "\\u0041"
   * 
   * @param String - nationalString in the UTF8 string to convert
   * @return is the string in JAVA unicode mimic escaped
   */
  public String encodeStr(String nationalString) throws UnsupportedEncodingException {
    String convertedString = "";

    for (int i = 0; i < nationalString.length(); i++) {
      Character chs = nationalString.charAt(i);
      convertedString += unicodeEscaped(chs);
    }
    return convertedString;
  }

  /**
   * Converts the string from mimic unicode format i.e. '\\u0020' back to UTF8.
   * 
   * This format is the Java source code format.
   * 
   *   CharUtils.unicodeEscaped(' ') = "\\u0020"
   *   CharUtils.unicodeEscaped('A') = "\\u0041"
   * 
   * @param String - nationalString in the JAVA unicode mimic escaped
   * @return is the string in UTF8 string
   */
  public String uencodeStr(String escapedString) throws UnsupportedEncodingException {
    String convertedString = "";

    String[] arrStr = escapedString.split("\\\\u");
    String str, istr;
    for (int i = 1; i < arrStr.length; i++) {
      str = arrStr[i];
      if (!str.isEmpty()) {
        Integer iI = Integer.parseInt(str, 16);
        char[] chaCha = Character.toChars(iI);
        convertedString += String.valueOf(chaCha);
      }
    }
    return convertedString;
  }


-7

(উত্তরটি ডট নেট 4.5.৫ এ রয়েছে এবং জাভাতে অবশ্যই একটি অনুরূপ পদ্ধতির উপস্থিতি থাকতে হবে)

আমি ভারতের পশ্চিমবঙ্গ থেকে এসেছি। আমি যেমন বুঝতে পারি আপনার সমস্যাটি হ'ল ... আপনি 'অ' (এটি বাংলা ভাষার একটি চিঠি) এর মতোই তৈরি করতে চান যা ইউনিকোড এইচএক্স: আছে 0X0985

এখন আপনি যদি নিজের ভাষার ক্ষেত্রে এই মানটি জানেন তবে আপনি কীভাবে সেই ভাষা নির্দিষ্ট ইউনিকোড প্রতীক তৈরি করতে পারবেন?

ডট নেট এ এটি এত সহজ:

int c = 0X0985;
string x = Char.ConvertFromUtf32(c);

এখন এক্স আপনার উত্তর। তবে এটি হেক্স দ্বারা রূপান্তরিত এবং বাক্য থেকে বাক্য রূপান্তর গবেষকদের পক্ষে কাজ: পি


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