JsonFx десериализует специальные символы

У меня проблема с десериализацией специальных символов с помощью Json.fx. Когда я пытаюсь сериализовать символы, такие как "ğ,ş,ü", функции Jsonfx.Serialize и Jsonfx.Deserialize работают неправильно.

Я пытаюсь решить проблему локализации для моего приложения. Помоги мне, пожалуйста.

Вот мои занятия:

 public class Language
{
    public int LanguageId;
    public Menu menu;
    public Language()
    {
        menu = new Menu();
    }        
}

public class Menu
{
    public List<string> MenuStrings;

    public Menu()
    {
        MenuStrings = new List<string>();
    }

}


public class Localization : MonoBehaviour {
public TextAsset LanguageFile;
private List<Language> _languages ;

private void Awake()
{
        Language Example = new Language();
        Example.LanguageId = 7;
        Example.menu.MenuStrings.Add("İskeğderinoviş");
        Example.menu.MenuStrings.Add("ŞağmiI");
        Example.menu.MenuStrings.Add("Şjikovamoğviş");

        Debug.Log(JsonWriter.Serialize(Example));
}

Сообщение журнала:

{"LanguageId": 7, "menu": {"MenuStrings": ["\ u0130ske \ u011Fderinovi \ u015F", "\ u015Ea \ u011FmiI", "\ u015Ejikovamo \ u011Fvi \ u015F"]}} UnityEngine.Debug: Log (Объект) Локализация:Awake() (в Assets/Scripts/Localization.cs:155)

Спасибо за ваше время.

1 ответ

Решение

http://answers.unity3d.com/questions/1077288/jsonfx-deserialize-special-characters.html

Что неверно? Json использует Unicode для кодирования не-ASCII символов. Например, \u011F - это кодировка для ğ. Кажется, он работает правильно для меня.

Изменить: Вот синтаксические диаграммы для Json: http://www.json.org/fatfree.html. Похоже, что строкой JSON могут быть настоящие буквы Юникода или формат \uNNNN. Почему JsonFx использует последнее, я не знаю. Может быть, это настройка?

Другие вопросы по тегам