Вниз  Вопросы по MobileBasic
- 11.04.2019 / 05:40
Askalite
  Пользователь

Askalite 
Сейчас: Offline
Вроде код на бейсике можно самоизменять, но работают ли такие команды рантайм, я не знаю. На зато так можно избавиться от цикла и рисовать быстрее.
В общем, можно создать файл и записывать туда команды, а потом делать так:
  1. 10 CALL "file://.../file$"

Команды ввода-вывода

OPEN #ch%,file$,mode$ - открывает файл(file) и сопоставляет ему канал (ch). Каналов может быть (0 - 9). Используются для доступа к файлам. [сокращенная форма OP]
Поддерживает протоколы file, socket, http, а так же возможен доступ к файлам из архива приложения ("/"+namefile$) и из RMS.
Тип (mode) может быть:
"OUTPUT" - запись,
"INPUT" - чтение.
Пример:
10 OPEN #0,"/file","INPUT"
- открывает (только для чтения!) любой файл-ресурс из JAR.
10 OPEN #0,"http://site.ru","OUTPUT"
20 PUT #0,ASC("q")
30 PUT #0,ASC("=")
40 PUT #0,ASC("d")
50 GET #0,b%
60 CLOSE #0
70 PRINT CHR$(b%):REPAINT
- отправка POST запроса("INPUT" - GET запрос).

CLOSE #ch% - закрывает канал. [сокращенная форма CL]

GET #ch%,b% - считывает байт.

PUT #ch%,b% - записывает байт.

INPUT #ch%,( /%/$) - считывает переменную (записанную с разделителями). [сокращенная форма IN #]

PRINT #ch%,( /%/$) - записывает переменную. [сокращенная форма PR #]

INPUTTEXT #ch%,s$,n% - считывает n% байт и переводит их в строку s$ в кодировке UTF-8. [сокращенная форма INTXT #]
Если n%=-1 - считывает все оставшиеся байты в файле.

PRINTTEXT #ch%,s$ - записывает строку s$ в кодировке UTF-8. [сокращенная форма PRTXT #]

NOTE #ch%,c% - считывает позицию чтения/записи.

POINT #ch%,c% - устанавливает позицию. Если число отрицательное, то позиция переходит в самый конец файла.

Или рисовать одну огромную карту, которую перерисовывать с помощью команд:

GELGRAB Gel$,X%,Y%,W%,H% - "вырезает" гель из прямоугольника (x,y,w,h). [сокращенная форма GG]
DRAWGEL Gel$,X%,Y%

С помощью них создавать карты, отрисовывая одной командой.
- 11.04.2019 / 19:08
Exception
  Пользователь

Exception 
Сейчас: Offline
askalite,давно тебе хотел сказать , ты ничтожен , не строй из себя кодера , ты уже мне раз помог :gg: :gg:
  Это уже выходит за пределы условий. Лучше бы помог дополнить код на проверку этих условий:
  1. Scanner sc;
  2. sc = new Scanner(new File("input.xz"));
  3. byte r;
  4. boolean ff;
  5. boolean begin;
  6. while(sc.hasNextByte()){

Наверх  Всего сообщений: 9542
Фильтровать сообщения
Поиск по теме
Файлы топика (270)