Win-1251 cyrillic -> Юникод

Discussion in 'Болталка' started by mustang777, 19 Jan 2011.

  1. mustang777

    mustang777 Elder - Старейшина

    Joined:
    16 May 2007
    Messages:
    15
    Likes Received:
    17
    Reputations:
    0
    Короче говоря, я имею много(103) тхт файлов в Win-1251 cyrillic, их все нужно перевсти в формат Юникод.
    Проблема в том, что плеер не читает Win-1251 cyrillic.
    Очень нужно, и ооочень срочно.
    Можно конечно ручками Сохранить Как-Юникод
    Но я умру, я пока 15 файлов так сохранил - схарился.
    Помогите пожалуйста програмкой, скриптом(желательно пых или перл, короче что-бы без проблем сейчас запустить его), чем угодно ...
    Спасибо.
     
  2. AnGeI

    AnGeI Elder - Старейшина

    Joined:
    8 Dec 2008
    Messages:
    396
    Likes Received:
    79
    Reputations:
    16
    PHP:
    /**
     * Конвертирует текст из юникода и обратно
     *
     * @param string $str - Строка текста
     * @param string $type - "w" - utf2win, "u" - win2utf
     * @return string
     */
    function utf8_convert($str$type)
    {
       static 
    $conv '';
       if (!
    is_array($conv))
       {
          
    $conv = array();
          for (
    $x=128$x <= 143$x++)
          {
             
    $conv['utf'][] = chr(209) . chr($x);
             
    $conv['win'][] = chr($x 112);
          }
          for (
    $x=144$x<= 191$x++)
          {
             
    $conv['utf'][] = chr(208) . chr($x);
             
    $conv['win'][] = chr($x 48);
          }
          
    $conv['utf'][] = chr(208) . chr(129);
          
    $conv['win'][] = chr(168);
          
    $conv['utf'][] = chr(209) . chr(145);
          
    $conv['win'][] = chr(184);
       }
       if (
    $type == 'w')
       {
          return 
    str_replace($conv['utf'], $conv['win'], $str);
       }
       elseif (
    $type == 'u')
       {
          return 
    str_replace($conv['win'], $conv['utf'], $str);
       }
       else
       {
          return 
    $str;
       }
    }
     
  3. mustang777

    mustang777 Elder - Старейшина

    Joined:
    16 May 2007
    Messages:
    15
    Likes Received:
    17
    Reputations:
    0
    Спасибо, но елементарно напиши, как его заюзать, в пыхе - ноль ..
    Я не понял откуда он берет файлы, и куда они будут сохраняться ...
     
  4. AnGeI

    AnGeI Elder - Старейшина

    Joined:
    8 Dec 2008
    Messages:
    396
    Likes Received:
    79
    Reputations:
    16
    ну как-бы заливка файлов это отдельная функция.
    на можно еще отдельную библиотеку для php скачать
    php.net/iconv, но если в пыхе не разбираешься, то лучше готовую прогу искать.
     
  5. AnGeI

    AnGeI Elder - Старейшина

    Joined:
    8 Dec 2008
    Messages:
    396
    Likes Received:
    79
    Reputations:
    16
    #5 AnGeI, 19 Jan 2011
    Last edited: 19 Jan 2011
  6. mustang777

    mustang777 Elder - Старейшина

    Joined:
    16 May 2007
    Messages:
    15
    Likes Received:
    17
    Reputations:
    0
    Спасибо, но пока ждал - вручную все сделал, но еще раз спасибо.