Извините, ничего не найдено.

Не расстраивайся! Лучше выпей чайку!
Регистрация
Справка
Календарь

Вернуться   forum.boolean.name > Программирование игр для мобильных телефонов > MidletPascal > Основной форум

Основной форум Сюда все проблемы связанные с программированием.

Ответ
 
Опции темы
Старый 25.12.2005, 19:00   #1
Red Ninja
 
Сообщений: n/a
Как сохранить в файл???Помоги а как сохранить переменый и массив в файл!
Загрушать я примерно понел а сохранять непонел!
 
Ответить с цитированием
Старый 25.12.2005, 21:02   #2
pax
Unity/C# кодер
 
Аватар для pax
 
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений
(для 5,323 пользователей)
Справку читать надо
Для этого используется Record store (хранилище записей)

вот пример из справки:
var rs    : recordStore; 
  countStr : string; 
  countInt : integer; 
  index  : integer; 
  nextId  :integer; 
begin 
 rs := OpenRecordStore('Count'); 
  
 nextId := GetRecordStoreNextId(rs); 
  
 // Если это первый запуск программы, то инициализация
 if nextId = 1 then 
  index := AddRecordStoreEntry(rs, '0'); // кол-во записей равно нулю 
  
 // чтение кол-ва запусков программы
 countStr := ReadRecordStoreEntry(rs, 1);    
  
 // увеличение на один 
 countInt := StringToInteger(countStr) + 1; 
 countStr := IntegerToString(countInt); 
  
 // сохранение
 ModifyRecordStoreEntry(rs, countStr, 1); 
  
 // закрытие record store 
 CloseRecordStore(rs);  
  
 // отображение кол-ва запусков
 ShowForm; 
 index := FormAddString('Number of runs: ' + countStr); 
  
 AddCommand(CreateCommand('Exit', CM_EXIT, 1));  
 repeat Delay(100) until GetClickedCommand <> EmptyCommand; 

end.
__________________
Blitz3d to Unity Wiki
(Offline)
 
Ответить с цитированием
Старый 26.12.2005, 08:05   #3
Red Ninja
 
Сообщений: n/a
Спасибо тебе я думал это функция как временая память!

Но всёравно нельзя некак мохранять в txt файл нужные мне параметры!
 
Ответить с цитированием
Старый 26.12.2005, 08:57   #4
Red Ninja
 
Сообщений: n/a
Смотри я делаю всё вродк правильно:
.......
 *if (menuGetSelectedIndex=Save) and (i=2) then
 begin
 * rs := OpenRecordStore('Save'); * 
 * ModifyRecordStoreEntry(rs,IntegerToString(Years),1);
 * ModifyRecordStoreEntry(rs,IntegerToString(indx),2);
 * ModifyRecordStoreEntry(rs,IntegerToString(indxMonstr),3);
 * ModifyRecordStoreEntry(rs,IntegerToString(kamen),4);
 * ModifyRecordStoreEntry(rs,IntegerToString(heal),5);
 * ModifyRecordStoreEntry(rs,IntegerToString(time),6);
 * ModifyRecordStoreEntry(rs,IntegerToString(timeY),7);
 * ModifyRecordStoreEntry(rs,IntegerToString(MenuG),8);
 * ModifyRecordStoreEntry(rs,Cursor,9);
 *
 * CloseRecordStore(rs);
 * ClearForm;
 * menu(i);
 end;
 
 * if (menuGetSelectedIndex=LoadG) and (i=2) then
 begin
 * rs := OpenRecordStore('Save');
 
 * Years * * :=StringToInteger(ReadRecordStoreEntry(rs,1));
 * indx * * *:=StringToInteger(ReadRecordStoreEntry(rs,2));
 * indxMonstr:=StringToInteger(ReadRecordStoreEntry(rs,3));
 * kamen * * :=StringToInteger(ReadRecordStoreEntry(rs,4));
 * heal * * *:=StringToInteger(ReadRecordStoreEntry(rs,5));
 * time * * *:=StringToInteger(ReadRecordStoreEntry(rs,6));
 * timeY * * :=StringToInteger(ReadRecordStoreEntry(rs,7));
 * MenuG * * :=StringToInteger(ReadRecordStoreEntry(rs,8));
 * Cursor * *:=ReadRecordStoreEntry(rs,9);

 * CloseRecordStore(rs);
 * 
 * ClearForm;
 * menu(i);
 end;
.......
А несего неполучаеться


Используйте соответствующие теги
да и зарегистрироваться не мешало бы
 
Ответить с цитированием
Старый 27.12.2005, 21:46   #5
pax
Unity/C# кодер
 
Аватар для pax
 
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений
(для 5,323 пользователей)
Главное при использовании RS это первый запуск программы, т.е. при первом запуске происходит инициализация...

Попробуй использовать такую процедуру:

Procedure InitRS(RSName:String);
var *rs *: recordStore;
	nextId	: integer;
Begin
 rs := OpenRecordStore(RSName); 
 nextId := GetRecordStoreNextId(rs); 
 // Если это первый запуск программы, то инициализация
 if nextId = 1 then 
 * nextId := AddRecordStoreEntry(rs, '0'); // кол-во записей равно нулю
 // закрытие record store 
 CloseRecordStore(rs); *
End;
И в самой программе исрользуй в самом начале:

program MY_PROG;
...
Begin
InitRS('Save');
...

End.
__________________
Blitz3d to Unity Wiki
(Offline)
 
Ответить с цитированием
Старый 28.12.2005, 07:55   #6
Guest
 
Сообщений: n/a
мне то нужно чтобы несколько параметров сохраналось принажатии на Save
а потом загрузалось при нажатии Load
Так вот я спрашиваю можноли в RecordStore несколько параметров сохранять и потом загружать????
 
Ответить с цитированием
Старый 28.12.2005, 11:27   #7
pax
Unity/C# кодер
 
Аватар для pax
 
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений
(для 5,323 пользователей)
Originally posted by Guest@Dec 28 2005, 07:55 AM
мне то нужно чтобы несколько параметров сохраналось принажатии на Save
а потом загрузалось при нажатии Load
Так вот я спрашиваю можноли в RecordStore несколько параметров сохранять и потом загружать????
Конечно можно, зачем же тогда индексы!

А на чем ты тестишь свои мидлеты? Может MidpX попробуешь?
__________________
Blitz3d to Unity Wiki
(Offline)
 
Ответить с цитированием
Старый 28.12.2005, 11:53   #8
pax
Unity/C# кодер
 
Аватар для pax
 
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений
(для 5,323 пользователей)
Вот по мойму твоя ошибка:
.......
if (menuGetSelectedIndex=Save) and (i=2) then
begin
* rs := OpenRecordStore('Save');*
* ModifyRecordStoreEntry(rs,IntegerToString(Years),1 );
* ModifyRecordStoreEntry(rs,IntegerToString(indx),2) ;
* ModifyRecordStoreEntry(rs,IntegerToString(indxMons tr),3);
* ModifyRecordStoreEntry(rs,IntegerToString(kamen),4 );
* ModifyRecordStoreEntry(rs,IntegerToString(heal),5) ;
* ModifyRecordStoreEntry(rs,IntegerToString(time),6) ;
* ModifyRecordStoreEntry(rs,IntegerToString(timeY),7 );
* ModifyRecordStoreEntry(rs,IntegerToString(MenuG),8 );
* ModifyRecordStoreEntry(rs,Cursor,9);

* CloseRecordStore(rs);
* ClearForm;
* menu(i);
end;

* if (menuGetSelectedIndex=LoadG) and (i=2) then
begin
* rs := OpenRecordStore('Save');

* Years* * :=StringToInteger(ReadRecordStoreEntry(rs,1));
* indx* * * :=StringToInteger(ReadRecordStoreEntry(rs,2));
* indxMonstr:=StringToInteger(ReadRecordStoreEntry(r s,3));
* kamen* * :=StringToInteger(ReadRecordStoreEntry(rs,4));
* heal* * * :=StringToInteger(ReadRecordStoreEntry(rs,5));
* time* * * :=StringToInteger(ReadRecordStoreEntry(rs,6));
* timeY* * :=StringToInteger(ReadRecordStoreEntry(rs,7));
* MenuG* * :=StringToInteger(ReadRecordStoreEntry(rs,);
* Cursor* * :=ReadRecordStoreEntry(rs,9);

* CloseRecordStore(rs);
*
* ClearForm;//Стереть нахрен
* menu(i);
end;
.......
хотя еще не известно что ты этим пытался сделать
__________________
Blitz3d to Unity Wiki
(Offline)
 
Ответить с цитированием
Старый 28.12.2005, 16:08   #9
Red Ninja
 
Сообщений: n/a
Бл*** точно забыл стереть эту ху***!
ШАс посмотрю работает или нет!
 
Ответить с цитированием
Старый 28.12.2005, 16:28   #10
Guest
 
Сообщений: n/a
Не всёравно чето невыходит
Писал сам прогу для сохранииея параметров которые я вашу
всё работает,а шас игру пиши и невоходит страно
Даже если я один параметр сохраняю НЕВОХОДИТ
 
Ответить с цитированием
Старый 28.12.2005, 16:29   #11
Red Ninja
 
Сообщений: n/a
Impersonalis,извени что матерился!
 
Ответить с цитированием
Старый 30.12.2005, 15:37   #12
Red Ninja(Михайлов Никита)
Оператор ЭВМ
 
Регистрация: 30.12.2005
Сообщений: 45
Написано одно полезное сообщение
Я сделал сохранения и гагрузки просто забыл про AddRecordStoreEntry(rs, '0'); !
(Offline)
 
Ответить с цитированием
Старый 01.01.2006, 19:34   #13
pax
Unity/C# кодер
 
Аватар для pax
 
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений
(для 5,323 пользователей)
Originally posted by Red Ninja(Михайлов Никита)@Dec 30 2005, 03:37 PM
Я сделал сохранения и гагрузки просто забыл про AddRecordStoreEntry(rs, '0'); !
Ну и лады
__________________
Blitz3d to Unity Wiki
(Offline)
 
Ответить с цитированием
Старый 25.07.2007, 15:53   #14
gunner05
AnyKey`щик
 
Регистрация: 25.07.2007
Сообщений: 4
Написано 0 полезных сообщений
(для 0 пользователей)
Re: Как сохранить в файл?

procedure setings;
begin
  // читаем номер телефона из хранилища
 rs := openRecordStore('phone'); 
  name := readRecordStoreEntry(rs, index); 
  closeRecordStore(rs); 
 
 // создаем форму и в текстовом поле выводим номер из хранилища
 clearForm; 
 showform;
  ok:=createCommand('Сохранить',CM_SCREEN,0);
  cancel:=createCommand('Назад',CM_SCREEN,1);
 addcommand(ok);
 addcommand(cancel);
 phone:= formAddTextField('Текущий номер', name, 15, TF_NUMERIC); 
 
 repeat 
      delay(100);
      clicked := getClickedCommand;
    until clicked <> emptyCommand; 
 
    if clicked = cancel then CreateMenu;
  // если номер изменили то записываем в хранилище
 phone2:= formGetText(phone); 
 
 rs := openRecordStore('phone'); 
  index := addRecordStoreEntry(rs, phone2); 
  closeRecordStore(rs); 
  CreateMenu;
end;
процедура считывает номер телефона из хранилища и выводит в TextField, если его изменить то записывает новый, в последствии выводит уже новый телефон.
проблема в том что чтение и запись работает только пока java приложение запущено, если приложение остановить то из хранилища запись пропадает....как это побороть?????
(Offline)
 
Ответить с цитированием
Старый 25.07.2007, 16:45   #15
IVenoMI
Знающий
 
Регистрация: 10.08.2006
Сообщений: 254
Написано 3 полезных сообщений
(для 3 пользователей)
Re: Как сохранить в файл?

Бред какой то... Записи - сохранение данных в энергонезависимую память, они должны сохранятся после завершения приложения...
(Offline)
 
Ответить с цитированием
Ответ


Опции темы

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Что всё таки лучше Guest FAQ 7 01.05.2013 15:32
EXE ФАЙЛ Mark Castle Алгоритмика 7 16.11.2009 15:13
jsr75i -как сохранить строку в файл ? gost6681 Библиотеки 2 05.08.2009 18:55
.exe файл Unodeya 3D-программирование 5 15.06.2009 18:32
Как сохранить меш, созданный/изменённый в Блитзе в тридемаксопонятный файл? ABTOMAT 3D-программирование 2 31.05.2007 18:16


Часовой пояс GMT +4, время: 09:43.


vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot
Style crйe par Allan - vBulletin-Ressources.com