Для проверки существования файла есть FileExists( filename )
, который возвращает логическое значение. Этой функции нужно только имя файла для выполнения проверки.
Напротив, FileWrite()
нужно работать с открытым файлом. Ему присваивается «номер файла», который создается вызовом FileOpen()
(и этот номер файла также должен быть присвоен FileClose()
в конце процесса).
Почему бы не посмотреть документацию PowerBuilder? Для этого есть пример: в PB IDE нажмите F1, просмотрите раздел FileWrite PowerScript function
, затем нажмите кнопку Пример. (Удивительно, но в примере не упоминается FileClose()
, но вам нужно вызвать его ;o)
Не забудьте проверить наличие недопустимых номеров файлов (например, если имя файла не существует или файл уже используется).
РЕДАКТИРОВАТЬ: поскольку OP пояснил в комментариях, что он хотел бы иметь возможность вызывать SetProfileString()
для несуществующего ini-файла (который не может создать новый ini-файл), вот пример нового ini создание файла:
int li_file
string ls_ini = "config.ini"
li_file = fileopen(ls_ini, LineMode!, write!)
FileClose(li_file)
SetProfileString(ls_ini, "Database", "Server", "host")
SetProfileString(ls_ini, "Database", "UserId", "foo")
SetProfileString(ls_ini, "Database", "Password", "bar")
SetProfileString(ls_ini, "Database", "DB", "baz")
person
Seki
schedule
14.03.2012