Документ взят из кэша поисковой машины. Адрес оригинального документа : http://www.snto-msu.net/showflat.php?Number=8581905&src=arc&showlite=
Дата изменения: Unknown
Дата индексирования: Wed Apr 13 04:12:01 2016
Кодировка: Windows-1251
Работа с контактной инфой - Public forum of MSU united student networks
Root | Google | Yandex | Mail.ru | Kommersant | Afisha | LAN Support
  
Technical >> Hard&Soft (Archive)

Страницы: 1
Rialto
Кораблик в плавании

Рег.: 07.11.2003
Сообщений: 6388
Рейтинг: 6306
  Работа с контактной инфой
      29.04.2009 13:15
 

Ситуация:
Есть один тхт файл в котором записана контактная информация людей по шаблону:

Фамилия: Иванов
Имя: Иван
Должность: специалист
Рабочий: 111-1111
Сотовый: +7 (111) 111-1111
Эл. почта: iivanov@domain.ru

Эту информацию о каждом человеке надо перевести в htm файл определенного шаблона и раскидать по папкам (папка должна назваться как почтовый ящик, только до собаки)
Чем и как это проще всего сделать ?



Каждый хомяк в жизни должен сделать 3 вещи:пожрать, поспать и сдохнуть...
integer
overflow

Рег.: 26.04.2006
Сообщений: 6765
Из: Эльфсборг
Рейтинг: 3235
  Re: Работа с контактной инфой [re: Rialto]
      29.04.2009 13:23
 

shell\perl\python\ruby

Rialto
Кораблик в плавании

Рег.: 07.11.2003
Сообщений: 6388
Рейтинг: 6306
  Re: Работа с контактной инфой [re: integer]
      29.04.2009 13:25
-2

Лучше, чтобы средства нашлись под винду.



Каждый хомяк в жизни должен сделать 3 вещи:пожрать, поспать и сдохнуть...
Yupiter
К.ф.-м.н.

Рег.: 19.11.2003
Сообщений: 23163
Из: В полете
Рейтинг: 3857
  Re: Работа с контактной инфой [re: Rialto]
      29.04.2009 13:27
 

Ну значит то же самое, только с CygWin/MinGW



Запости картинку и увидь свое имя в этом почОтном списке

House music for you
integer
overflow

Рег.: 26.04.2006
Сообщений: 6765
Из: Эльфсборг
Рейтинг: 3235
  Re: Работа с контактной инфой [re: Rialto]
      29.04.2009 13:29
 

Во-первых не ставилось задачи чтобы это было под винду. А во-вторых, это все есть под винду.

unkulunkulu
unkulunkulunkulu

Рег.: 12.11.2006
Сообщений: 18453
Из: 13000
Рейтинг: 11759
  Re: Работа с контактной инфой [re: integer]
      29.04.2009 13:34
 

Quote:

shell\perl\python\ruby


awk/sed/possibly bash

DarkGray
Carpal Tunnel

Рег.: 30.09.2002
Сообщений: 31415
Рейтинг: 8952
  Re: Работа с контактной инфой [re: Rialto]
      29.04.2009 13:38
1

Quote:

Чем и как это проще всего сделать ?




тебе gui-евое решение нужно, или скрипты тоже устроят?

если под windows, то для скриптов powershell можно взять.

DarkGray
Carpal Tunnel

Рег.: 30.09.2002
Сообщений: 31415
Рейтинг: 8952
  Re: Работа с контактной инфой [re: Rialto]
      29.04.2009 13:40
1

самое сложное - это развернуть список в таблицу
дальше все уже халявно делается

Rialto
Кораблик в плавании

Рег.: 07.11.2003
Сообщений: 6388
Рейтинг: 6306
  Re: Работа с контактной инфой [re: DarkGray]
      29.04.2009 13:41
 

Скрипты устроят, только надо пример какой-нибудь



Каждый хомяк в жизни должен сделать 3 вещи:пожрать, поспать и сдохнуть...
DarkGray
Carpal Tunnel

Рег.: 30.09.2002
Сообщений: 31415
Рейтинг: 8952
  Re: Работа с контактной инфой [re: Rialto]
      29.04.2009 14:15
3

Quote:

Скрипты устроят, только надо пример какой-нибудь




парсит исходный файл и создает набор контактов.
генерация директорий, html-я и т.д. запихивается в функцию ProcessContact, где входной параметр $contact - это уже распарсенный контакт с полями "Фамилия", "Должность" и т.д.

code:
function BeginOfLine { param([string]$line, [string]$separator); if ($line -ne $null) { $pos = $line.IndexOf($separator); if ($pos -ge 0) { $line.SubString(0, $pos); } } } function EndOfLine { param([string]$line, [string]$separator); if ($line -ne $null) { $pos = $line.IndexOf($separator); if ($pos -ge 0) { $line.SubString($pos+$separator.Length).Trim(); } } } function get-contacts { $contact = @{}; $input | foreach ` { $begin = BeginOfLine $_ ":" if ($begin -ne $null) { if ($begin -eq "Фамилия") { if ($contact["Фамилия"] -ne $null) { $contact $contact = @{} } } $contact[$begin] = EndOfLine $_ ":"; } } if ($contact["Фамилия"] -ne $null) { $contact } } function ProcessContact { param ($contact) write-host "Hello, " $contact["Должность"] " " $contact["Фамилия"] } get-content contacts.txt | get-contacts | foreach {ProcessContact($_)}


DarkGray
Carpal Tunnel

Рег.: 30.09.2002
Сообщений: 31415
Рейтинг: 8952
  Re: Работа с контактной инфой [re: Rialto]
      29.04.2009 14:18
1

генерацию html кстати лучше делать в виде внешнего шаблона
code:
<html> <body> Hello $$$Должность$$$ $$$Фамилия$$$ </body> </html>


а потом у этого шаблона заменять все эти $$$...$$$

Страницы: 1

Technical >> Hard&Soft (Archive)

Дополнительная информация
1 зарегистрированных и 0 анонимных пользователей просматривают этот форум.

Модераторы:  exc, muse, Riamella, KAA 

Печать темы

Права
      Вы можете создавать новые темы
      Вы можете отвечать на сообщения
      HTML отключен
      UBBCode включен

Рейтинг:
Просмотров темы:

Переход в