जवाबों:
यह संभावना है कि आपका आउटपुट एन्कोडिंग ASCII पर सेट है। आउटपुट भेजने से पहले इसका उपयोग करने का प्रयास करें:
Console.OutputEncoding = System.Text.Encoding.UTF8;
(MSDN सहायक प्रलेखन के लिए लिंक ।)
और यहाँ एक छोटा सा कंसोल टेस्ट ऐप है जो आपको उपयोगी लग सकता है:
सी#
using System;
using System.Text;
public static class ConsoleOutputTest {
public static void Main() {
Console.OutputEncoding = System.Text.Encoding.UTF8;
for (var i = 0; i <= 1000; i++) {
Console.Write(Strings.ChrW(i));
if (i % 50 == 0) { // break every 50 chars
Console.WriteLine();
}
}
Console.ReadKey();
}
}
VB.NET
imports Microsoft.VisualBasic
imports System
public module ConsoleOutputTest
Sub Main()
Console.OutputEncoding = System.Text.Encoding.UTF8
dim i as integer
for i = 0 to 1000
Console.Write(ChrW(i))
if i mod 50 = 0 'break every 50 chars
Console.WriteLine()
end if
next
Console.ReadKey()
End Sub
end module
यह भी संभव है कि कंसोल कंसोल की आपकी पसंद उस विशेष चरित्र का समर्थन नहीं करती है। विंडोज टूल-बार मेनू (C: जैसे आइकन) पर क्लिक करें और गुण -> फ़ॉन्ट चुनें। यह देखने के लिए कुछ अन्य फ़ॉन्ट आज़माएं कि क्या वे आपके चरित्र को ठीक से प्रदर्शित करते हैं:
मुझे MSDN पर कुछ सुरुचिपूर्ण समाधान मिला
System.Console.Write('\uXXXX') //XXXX is hex Unicode for character
यह सरल कार्यक्रम स्क्रीन पर ℃ सही लिखता है।
using System;
public class Test
{
public static void Main()
{
Console.Write('\u2103'); //℃ character code
}
}
Console.OutputEncoding संपत्ति
http://msdn.microsoft.com/library/system.console.outputencoding(v=vs.110).aspx
ध्यान दें कि कंसोल में यूनिकोड वर्णों को सफलतापूर्वक प्रदर्शित करने के लिए निम्नलिखित की आवश्यकता होती है:
के अतिरिक्त Console.OutputEncoding = System.Text.Encoding.UTF8;
कुछ वर्णों के लिए आपको अतिरिक्त फोंट (यानी चीनी) स्थापित करने की आवश्यकता है।
में Windows 10 पहले करने के लिए जाना क्षेत्र व भाषा सेटिंग्स और आवश्यक भाषा के लिए समर्थन स्थापित:
उसके बाद आप कमांड प्रॉम्प्ट प्रॉस्पेक्ट्स (या यदि आप चाहें तो डिफॉल्ट्स ) पर जा सकते हैं और अपनी भाषा का समर्थन करने वाले कुछ फ़ॉन्ट चुनें (जैसे चीनी मामले में काईटीआई ):
यह मेरे लिए काम करता है:
Console.OutputEncoding = System.Text.Encoding.Default;
कुछ प्रतीकों को प्रदर्शित करने के लिए, कमांड प्रॉम्प्ट के फॉन्ट को Lucida Console में सेट करना आवश्यक है:
ओपन कमांड प्रॉम्प्ट;
कमांड प्रॉम्प्ट के शीर्ष बार पर राइट क्लिक करें;
गुण क्लिक करें;
यदि फ़ॉन्ट Raster फ़ॉन्ट्स पर सेट है, तो इसे Lucida Console में बदलें।
Console.OutputEncoding
सेट नहीं किया जा सकताEncoding.Unicode
(UTF-16)।Encoding.UTF8
, हालांकि, संभव है।