Ввод-вывод#
Работа с файлами#
Загрузка/Сохранение#
- SaveToFile(FileName, FileText: String)#
Сохраняет текст FileText в файл FileName. Если имя файла пустое - вызывается диалоговое окно выбора файла.
- Parameters
FileName (
String
) – Имя файла.FileText (
String
) – Сохраняемый текст.
<sql> <sAfter> [out svRes] begin :svRes := AC_Loader.GetAfterScript; end; </sAfter> </sql> <pascal> v := ExecSqlEx('sAfter', 'svRes', [ftOraClob], ['']); SaveToFile('', v[0]); </pascal>
Note
Ввиду технических ограничений, на текущий момент, открывается не системный диалог сохранения файла, а системный диалог выборка файла. Таким образом, если файл для сохранения отсутствует, его необходимо создать вручную заранее, либо в окне выбора файла.
- SaveToFile()
Экспортирует содержимое выборки в файл формата .xls во временную директорию
<pascal> SaveToFile(); </pascal>
- SaveBlobToFile(FileName: String; BlobData: Variant)#
Сохранение бинарных данных в файл.
- Parameters
FileName (
String
) – Имя файлаBlobData (
Variant
) – Бинарные данные.
<sql> <SaveBlob> begin BlobOpen_testAPI.SetblobData(:id, :FileInBlob); end; </SaveBlob> </sql> <PASCAL> blob := LoadFromFileToBlob('D:\1.mp3'); // загрузка из файла Selection.AddVar('FileInBlob',blob, ftOraBlob); SaveBlobtoFile('D:\2.mp3', GetVar('FileInBlob')); // сохрание в другой файл ExecSQL('SaveBlob'); // Сохрание на сервере </PASCAL>
- SaveTextToFileProc(FileName: String; Encoding: Integer; TextData: String; Preamble: Boolean)#
Метод сохраняет символьные данные TextData в файле в заданной кодировке Encoding. Параметр Preamble применяется для кодировки Unicode и определяет задавать префикс с типом Unicode кодировки или нет. Большинство приложений (Блокнот, NotePad++ и др.) считывают префикс и отображают текст в нужной кодировке. Рекомендуется всегда задавать префикс, передавая в параметре Preamble значение True.
- Parameters
FileName (
String
) – Имя файла.Encoding (
Integer
) –Кодировка файла. Доступные значения:
1200 - UTF-16 LE
1201 - UTF-16 BE
65000 - UTF-7
Warning
Кодировка UTF-7 не поддерживается в AS. При использовани данного значения будет использована кодировка UTF-8
65001 - UTF-8
TextData (
String
) – Массив символьных данных.Preamble (
Boolean
) – Флаг определяет задавать префикс или нет.
<PASCAL> str := LoadTextFromFileProc('D:\utf8file_in.txt', 65001); // Загружаем utf-8 (unicode) файл и преобразуем в AnsiString ShowMessage(str); // Выводим Ansi строку в сообщение SaveTextToFileProc('D:\utf8file_out.txt', 1200, str, true); // Сохраняем строку в кодировке Utf-16(unicode) </PASCAL>
Warning
BOM префикс добавляется всегда и аргумент Preamble не влияет на добавление
Note
Если в агрумент Encoding передано значение, отсутствующее в перечислении, будет использована кодировка UTF-8.