Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 21.03.2018, 17:08   #11
min@y™
Цифровой кот
Старожил
 
Аватар для min@y™
 
Регистрация: 29.08.2014
Сообщений: 7,629
По умолчанию

Цитата:
Сообщение от Serge_Bliznykov Посмотреть сообщение
функция, которая превращает строчку "1.2.3.4" в "001.002.003.004"
у меня нет, но её можно написать за 3 минуты на коленке, используя мои функции модуля.

Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...

Последний раз редактировалось min@y™; 21.03.2018 в 17:11.
min@y™ вне форума Ответить с цитированием
Старый 21.03.2018, 17:09   #12
Алексей0001
Пользователь
 
Регистрация: 25.11.2017
Сообщений: 39
По умолчанию

проверил на файл только с ип адресов, все работает, а так
у меня просто структура файла другая, файл разбиваю по столбцам через табуляцию символом ','
Цитата:
tel, fak, do, ipadres
123,312,32,102.03.123.043
321,31,321,01.123.123.3
спасибо и на этом буду разбирается
Алексей0001 вне форума Ответить с цитированием
Старый 21.03.2018, 17:09   #13
Алексей0001
Пользователь
 
Регистрация: 25.11.2017
Сообщений: 39
По умолчанию

Цитата:
Сообщение от min@y™ Посмотреть сообщение
у меня нет, но её можно написать за 3 минуты на коленке, используя мои функции модуля.
покажите ваш модуль
Алексей0001 вне форума Ответить с цитированием
Старый 21.03.2018, 17:12   #14
min@y™
Цифровой кот
Старожил
 
Аватар для min@y™
 
Регистрация: 29.08.2014
Сообщений: 7,629
По умолчанию

Цитата:
Сообщение от Алексей0001 Посмотреть сообщение
покажите ваш модуль
да вот
Вложения
Тип файла: 7z uWinSockUtils.7z (2.6 Кб, 22 просмотров)
Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
min@y™ вне форума Ответить с цитированием
Старый 22.03.2018, 09:30   #15
Алексей0001
Пользователь
 
Регистрация: 25.11.2017
Сообщений: 39
По умолчанию

подправьте пожалуйста, не получается установить по четвертому столбцу
Код:
var ts, t1,tk : TStringList;
  s : string;
  i, j,m : integer;
begin
 if not dlgOpen1.Execute then
    exit;

  ts := TStringList.Create;
  t1 := TStringList.Create;
  t1.Delimiter := '.';
  try
    ts.LoadFromFile(dlgOpen1.FileName);
    strngrd1.RowCount := ts.Count;
    strngrd1.ColCount := 4;
    strngrd1.FixedCols := 0;
    strngrd1.FixedRows := 1;
    strngrd1.ColWidths[0] := 150;
    //устанавливаем разделитель файла
    tk := TStringList.Create;
    tk.delimiter := ',';
    //разбиваем файл
      try
    for i := 0 to ts.Count - 1 do
    begin
      tk.Clear;
      tk.DelimitedText := ts.Strings[i];
      if strngrd1.ColCount < tk.Count then
      strngrd1.ColCount := tk.Count;
      strngrd1.Rows[i].Assign(tk);
    end;
  finally
    // очищаем память
    FreeAndNil(tk);
  end;
    for m := 0 to ts.Count - 1 do begin
    for i := 1 to ts.Count - 1 do begin  //1й столбец
       s := ts.Strings[i];
       if Pos('.',s)>0  then begin
         t1.DelimitedText := s;
         s := '';
         for j := 0 to t1.Count - 1 do begin
            s:= s + Format('%.3d',[StrToIntDef(t1.Strings[j],0)]);
            if j< t1.Count - 1 then s := s + '.'
         end;
       end;
       strngrd1.Cells[0, i] := s
    end;
    end;

  finally
    ts.Free;
    t1.Free
  end;
end;
Алексей0001 вне форума Ответить с цитированием
Старый 22.03.2018, 09:34   #16
min@y™
Цифровой кот
Старожил
 
Аватар для min@y™
 
Регистрация: 29.08.2014
Сообщений: 7,629
По умолчанию

Цитата:
Сообщение от Алексей0001 Посмотреть сообщение
подправьте пожалуйста, не получается установить по четвертому столбцу
Мож хватит хернёй заниматься? Я тебе волшебный модуль дал, какого хрена ты продолжаешь говнокодить?!
Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
min@y™ вне форума Ответить с цитированием
Старый 22.03.2018, 09:48   #17
Алексей0001
Пользователь
 
Регистрация: 25.11.2017
Сообщений: 39
По умолчанию

вот идет по нужному столбцу, только 1й символ не берет а ставить 000
Код:
var ts, t1,tk : TStringList;
  s : string;
  i, j,m : integer;
begin
 if not dlgOpen1.Execute then
    exit;

  ts := TStringList.Create;
  t1 := TStringList.Create;
  t1.Delimiter := '.';
  try
    ts.LoadFromFile(dlgOpen1.FileName);
    strngrd1.RowCount := ts.Count;
    strngrd1.ColCount := 4;
    strngrd1.FixedCols := 0;
    strngrd1.FixedRows := 1;
    strngrd1.ColWidths[3] := 150;
    //устанавливаем разделитель файла
    tk := TStringList.Create;
    tk.delimiter := ',';
    //разбиваем файл
      try
    for i := 0 to ts.Count - 1 do
    begin
      tk.Clear;
      tk.DelimitedText := ts.Strings[i];
      if strngrd1.ColCount < tk.Count then
      strngrd1.ColCount := tk.Count;
      strngrd1.Rows[i].Assign(tk);
    end;
  finally
    // очищаем память
    FreeAndNil(tk);
  end;
   // for m := 1 to ts.Count - 1 do begin
      for i := 1 to ts.Count - 1 do begin  //1й столбец
        s := ts.Strings[i];
        if Pos('.',s)>0  then
          begin
            t1.DelimitedText := s;
            s := '';
              for j := 0 to t1.Count - 1 do
                begin
                  s:= s + Format('%.3d',[StrToIntDef(t1.Strings[j],0)]);
                  if j< t1.Count - 1 then s := s + '.';
                end;
          end;
        strngrd1.Cells[3, i] := s
    end;
    //end;

  finally
    ts.Free;
    t1.Free
  end;
end;
Изображения
Тип файла: png 1.PNG (3.4 Кб, 77 просмотров)
Алексей0001 вне форума Ответить с цитированием
Старый 22.03.2018, 09:49   #18
Алексей0001
Пользователь
 
Регистрация: 25.11.2017
Сообщений: 39
По умолчанию

Цитата:
Сообщение от min@y™ Посмотреть сообщение
Я тебе волшебный модуль дал
там еще разобраться нужно, да и если нужно будет программу на другом компьютере запускать, нужно будет и туда модуль копировать и настраивать
Алексей0001 вне форума Ответить с цитированием
Старый 22.03.2018, 09:53   #19
min@y™
Цифровой кот
Старожил
 
Аватар для min@y™
 
Регистрация: 29.08.2014
Сообщений: 7,629
По умолчанию

Цитата:
Сообщение от Алексей0001 Посмотреть сообщение
там еще разобраться нужно, да и если нужно будет программу на другом компьютере запускать, нужно будет и туда модуль копировать и настраивать
Ты серьёзно?
Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
min@y™ вне форума Ответить с цитированием
Старый 22.03.2018, 10:43   #20
Алексей0001
Пользователь
 
Регистрация: 25.11.2017
Сообщений: 39
По умолчанию

все, проблема решена
Алексей0001 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Проверка правильности написания адреса почты. bdfdcdbfv Общие вопросы C/C++ 0 05.04.2015 19:33
Пинг адреса и проверка открытости порта -=Virus=- Работа с сетью в Delphi 2 26.02.2011 12:36
Проверка существование Email адреса на сервере Бутаков_Сергей Работа с сетью в Delphi 7 29.12.2010 01:55
Проверка правильности IP адреса Nester Помощь студентам 2 23.08.2009 14:39