Выгрузить в файл / вычитать из файла

Страницы: 1
RSS
Выгрузить в файл / вычитать из файла, Выгрузить в файл / вычитать из файла
 
Подскажите где искать функции для работы с фалами?
Как, например, выгрузить в файл результаты работы скрипта?
Как из файла вычитать коды инструментов и загнать их в таблицу текущих торгов?
 
Что-то в нете есть, вот, например https://quikluacsharp.ru/qlua-osnovy/primer-raboty-s-fajlami-v-qlua-lua/

Как можно в таблицу текущих торгов из файла затолкать пока не ищется.
 
Dr Wed, В ТТТ затолкать ничего нельзя - она только для чтения.
 
Dr Wed, за исключением пользовательских графических таблиц и скриптов индикаторов, графический интерфейс и программный интерфейс (Lua API) полностью развязаны и не имеют возможности друг с другом общаться. Можете считать программную часть квика отдельной и невзаимосвязанной с графической частью.
 
Цитата
Dr Wed написал:
где искать функции для работы с фалами?
Как, например, выгрузить в файл результаты работы скрипта?
В самом Lua. Есть встроенная библиотека io, в ней есть функции open которая открывает файл, в объкте файла есть функция write которая пишет в файл данные. Сразу оговорюсь что не нужно пользоваться бинарными файлами, используйте простой текст - так гораздо проще плюс файлы можно редактировать без затруднений.

Примерно таким способом можно сбросить в файл одноуровневый массив или строку.
Код
scriptResults = runMyScript ( )

local file, err = io.open ( "path/to/my/file.txt", "w" )
if not file then error ( err ) end
file:write ( type ( scriptResults ) == "table" and table.concat ( scriptResults , "\n" ) or scriptResults )
file:close ( ) 
Код прочтения в массив данных из файла разделенных построчно.
Код
local fileInput = { }

local file, err = io.open ( "path/to/my/file.txt", "r" )
if not file then error ( err ) end
for line in file:lines ( ) do
  fileInput = line
end

doThingsWith ( fileInput )
 
Важное исправление.
Код
local fileInput = { }

local file, err = io.open ( "path/to/my/file.txt", "r" )
if not file then error ( err ) end
for line in file:lines ( ) do
  fileInput[ #fileInput + 1 ] = line
end

doThingsWith ( fileInput )
Страницы: 1
Читают тему (гостей: 1)
Наверх