Не-Ascii символы не поддерживаются .net? - PullRequest
1 голос
/ 06 апреля 2010

Когда я добавил класс с не-Ascii символами в имени класса, он удалил не-Ascii из имени класса и при добавлении непосредственно в класс жалуется на не-Ascii символы.

Не поддерживаются ли символы не ASCII в имени класса и имени переменной?

Ответы [ 3 ]

4 голосов
/ 06 апреля 2010

Прочтите раздел 9.4.2 из стандарта ECMA для C #

1 голос
/ 06 апреля 2010

Возможно, вам нужно сохранить файл с кодировкой, которая поддерживает символы, которые вы хотите иметь в имени вашего класса:

  • Нажмите Файл -> Сохранить как
  • Нажмите маленькую стрелку на кнопке сохранения и выберите «Сохранить с кодировкой ...»

Тем не менее, это похоже на умоление о том, чтобы иметь имена классов, требующие расширенной кодировки (но это только чувство, которое я получаю; на самом деле у меня нет никакого опыта с этим).

0 голосов
/ 06 апреля 2010

Это компилируется и запускается для меня

public class 嗨世界
{
    public 嗨世界() {}

    public void Run()
    {
        System.Console.WriteLine("Hello, Unicode world.");
        System.Console.WriteLine("type= {0}", this.GetType().Name.ToString());
    }

    public static void Main(string[] args)
    {
        try
        {
            new 嗨世界()
                .Run();
        }
        catch (System.Exception exc1)
        {
            Console.WriteLine("Exception: {0}", exc1.ToString());
        }
    }
}

ps: я понятия не имею, что означают эти символы.

...