2016-01-25 4 views
0

Как мы знаем, java следует системе unicode, которая поддерживает все алфавиты многих языков. Я искал и обнаружил, что значение Unicode для अ равно 2309, а значение для आ равно 2310, которые являются алфавитами языка DEVANAGRI. Код, который я написал, - это что-то вроде этого.Почему этот код всегда выводит вывод как '?'

class Test 
{ 
    public static void main(String args[]) 
    { 
     char a=(char)2310; 
     System.out.println(a); 
    } 
} 

Нет вопросов Я пишу 2309 или 2310 выход «?» всегда. Как это происходит?

+0

попробуйте выполнить его в цикле for из 0, вы получите все значения символов – sidgate

+0

Возможно, вам придется изменить настройки IDE, в Eclipse перейдите в Окно -> Настройки -> Общие -> Рабочая область: кодировка текстового файла. Если вы используете, например, gradle вам также придется изменить настройку кодировщика. – Damiano

+3

@Damiano: Почему бы настройки * компилятора были релевантны? Исходный код целиком находится в ASCII. –

ответ

13

Вы пытаетесь напечатать символы, которые не поддерживаются набором символов консоли. вы можете попробовать изменить набор символов консоли, как указано здесь Can't print hindi characters

+0

теперь ** это ** правильный ответ. – specializt

Смежные вопросы