![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
||||
|
||||
|
У меня есть *.txt файл вида:
login1: pass1 login2: pass2 Подскажите как можно все логины и пароли перевести в два масива, с паролями и логинами по порядку? |
|
#2
|
||||
|
||||
|
как вариант через Copy(s, 1, Pos(':', s) - 1)
|
|
#3
|
||||
|
||||
|
Код:
type
TLogin = Record
Log, Pas: String;
end;
var
Form1: TForm1;
Mas: Array[1..3] of TLogin;
N: Integer;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
var
Str: TStringList;
i: Integer;
begin
{
Файл должен быть типа:
Логин1:Пароль1
Логин2:Пароль2
...
}
N := 1;
Str := TStringList.Create;
Str.LoadFromFile('myfile.txt');
for i:=0 to Str.Count-1 do begin
Mas[N].Log := Copy(Str.Strings[i], 1, Pos(':', S)-1);
Mas[N].Pas := Copy(Str.Strings[i], Pos(':', S)+1, Length(Str.Strings[i])-Pos(':', S));
inc(N);
end;
Str.Free;
// теперь в массиве Mas[i] хранятся логины пароли.Также возможно разбить логины-пароли: Код:
S := StringReplace(S, ':', #10#13, [rfReplaceAll]); ЗЫ пока писал уже ответили ![]() |
|
#4
|
||||
|
||||
|
@v1s2222 #13#10 лучше заменить на sLineBreak
![]() |
|
#5
|
||||
|
||||
|
v1s2222, спасибо. Скажи, а как можно оформить твой код для вставки в программу, а то что то у меня одни ошибки вылазят. Например в роли процедуры.
|
|
#6
|
||||
|
||||
|
Код:
type
TLogin = Record
Log, Pas: String;
end;
var
Form1: TForm1;
Mas: Array[1..3] of TLogin;
N: Integer;
implementation
{$R *.dfm}
procedure LoadLogins;
var
Str: TStringList;
i: Integer;
begin
{
Файл должен быть типа:
Логин1:Пароль1
Логин2:Пароль2
...
}
N := 1;
Str := TStringList.Create;
Str.LoadFromFile('C:\1.txt');
for i:=0 to Str.Count-1 do begin
Mas[N].Log := Copy(Str.Strings[i], 1, Pos(':', Str.Strings[i])-1);
Mas[N].Pas := Copy(Str.Strings[i], Pos(':', Str.Strings[i])+1, Length(Str.Strings[i])-Pos(':', Str.Strings[i]));
inc(N);
end;
Str.Free;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
LoadLogins;
showmessage('Первый логин: ' + mas[1].Log + '; 1 Пароль: ' + mas[1].Pas);
end; |
|
#7
|
||||
|
||||
|
v1s2222, большое спасибо!)) Работает))
А как можно сделать так чтоб можно было переводить динамическое количество строк в файле, ну соответственно и узнать номер последней записи в массиве? Последний раз редактировалось casperock, 22.01.2011 в 15:54. |
|
#8
|
||||
|
||||
|
Поможет кто?))
|
|
#9
|
|||
|
|||
|
Цитата:
описание динамического массива: Код:
var A : Array Of String; Функции работы с дин. массивами: SetLength() - утсановка длинны массива; Low() - индекс нижнего элемента; High() - индекс верхнего элемента. |