MyChat Scripts: function LoadLineFromFile, save the text in a specified encoding
Get the string with a specified number from a text file. The end of the string is a couple of characters CR LF (ASCII #13#13). You can specify an encoding for a file. String enumeration starts from 1.
Syntax
function LoadLineFromFile(sFileNameWithPath: string; iLineNumber: integer; iEncodingType: integer; var sText: string): integer;
Parameters and return values
Parameter |
Type |
Value |
sFileNameWithPath |
string |
a name of a text file with a full path to it; |
iLineNumber |
integer |
number of a string you need to read; |
iEncodingType |
integer |
file encoding type, number. |
var sText |
string |
read string. If an error occurs empty string. |
Function result
0 |
string receive successfully; |
-1 |
file does not exist |
-2 |
file has less strings than you specified in the variable iLineNumber; |
-3 |
access error to a file; |
-4 |
string number must be greater than zero. |
Exampe
const
FILE_NAME = 'F:\Doc\MyChatJSONprotocol.txt';
LINE = 67;
var
iResult: integer;
s, sLog: string;
begin
iResult := LoadLineFromFile(FILE_NAME, LINE, 6, s);
case iResult of
0: sLog := s;
-1: sLog := 'file not found';
-2: sLog := 'file has less strings then you specified';
-3: sLog := 'unknown error';
-4: sLog := 'line number must be greater than 0';
end;
mLogScript(sLog, '');
end.
Script work result
[18:07:35] (Log "LoadLineFromFile"): 1. Right after connection from the client's side via TCP on a specified port (by default 2004), the server can display the error and disconnect after 3 seconds.
[18:07:35] (Run "LoadLineFromFile"): Script operation time: 7 ms
[18:07:35] (Run "LoadLineFromFile"): Script done successfully.