29.03.2012, 12:46
Что если использовать gvar плагин, можно было бы SetGVarString(name[], text[], id), где имя - ключевое имя, текст-текст, а ид - номер языка?
Тексты, как уже сказали, можно загружать из файла(1 раз - при старте).
jhonyxakep
Не мысли узко, символ перевода на новую строку просто обходится. Но для этого нужно работать с бинарным потоком.
Тогда условная строка будет иметь такую форму:
2байта - на указание длины ключа(x)|4 байта - на длину текста(y)|2байта - на номер языка или на его короткое название|x байт на ключ|y байт на строку.
Знак | здесь только для визуального разделения разделов, но и можно на него потратиться, только нужно будет прочитать лишние байты.
Принцип - читает первые 8 байт(длина постоянная) > получаем в 3 переменных предварительные данные > читаем последовательно нужное кол-во байт для ключа и текста.
Problem?
Тексты, как уже сказали, можно загружать из файла(1 раз - при старте).
jhonyxakep
Не мысли узко, символ перевода на новую строку просто обходится. Но для этого нужно работать с бинарным потоком.
Тогда условная строка будет иметь такую форму:
2байта - на указание длины ключа(x)|4 байта - на длину текста(y)|2байта - на номер языка или на его короткое название|x байт на ключ|y байт на строку.
Знак | здесь только для визуального разделения разделов, но и можно на него потратиться, только нужно будет прочитать лишние байты.
Принцип - читает первые 8 байт(длина постоянная) > получаем в 3 переменных предварительные данные > читаем последовательно нужное кол-во байт для ключа и текста.
Problem?