Как сохранить значение int64 в GSettings?
Я использую GSettings в своем приложении Vala для хранения некоторых данных. И одно из моих полей должно хранить дату. И все функции в Vala, которые управляют датой и временем, возвращают значение int64.
Я знаю, как хранить значения int в схеме GSettings, но я хочу сделать это без преобразования int64 в int.
Я знаю, что в настоящее время это не проблема, и я могу безопасно конвертировать int64 DateTime
до int, но когда-нибудь он переполнится и не будет работать правильно.
Итак, вопрос: возможно ли хранение int64 в GSettings? И если да, то как?
1 ответ
Вы можете использовать любой Variant
тип. Строка типа для int64
является x
, Вы можете использовать Variant.int64
создать новый вариант и GLib.Settings.get_value
а также GLib.Settings.set_value
манипулировать этим.
Вала может также встать Variant
вводит автоматически в большинстве случаев. Если ваша схема установлена правильно, вы можете просто позвонить set_value
с int64
и это будет автоматизировано. Точно так же, если вы разыгрываете возвращение get_value
в int64
, это будет разоблачено.