Автор Тема: Конвертиране на файлове CP1251->UTF8  (Прочетена 4921 пъти)

alabal

  • Напреднали
  • *****
  • Публикации: 2173
  • cat /earth/europe/bg/sofia | grep Nacamura
    • Профил
Братя и ТБС!
Проблемът с който се сблъсках е следният:
Няколко текстови фала, съдържащи php код. Файловете представляват превод от англиски на бългасрски на уеб приложение - invision board. Кодирането е CP1251 и е използван Times New Roman за шрифт.
Искам да променя кодиранто им на UTF-8, но не успявам да се справя - нямам почти никакъв опит с подобни неща. Пробвах търсене за конвъртър или конвертиране и това не ме доведе до добър резултат.
Ако някой може да даде малко акъл или линк към превод на invision board на български с UTF-8 кодиране ,ще бъда много благодарен.
Активен

It makes you awful glad that you were born a man.

yamahadrums

  • Напреднали
  • *****
  • Публикации: 226
    • Профил
Конвертиране на файлове CP1251->UTF8
« Отговор #1 -: Oct 06, 2005, 22:08 »
Я погледни това: http://www.die.net/doc/linux/man/man1/iconv.1.html

  Дано ти свърши работа.
Активен

romeo_ninov

  • Напреднали
  • *****
  • Публикации: 2155
    • Профил
Конвертиране на файлове CP1251->UTF8
« Отговор #2 -: Oct 06, 2005, 22:24 »
Ето ти един конвертор в обратна посока:
Примерен код

   while ((c = getchar()) != EOF) {
      if (c >= 0x80) {
         c = getchar();
         if (c >= 0x90)
            c += 0x30;
         else
            c += 0x70;
      }
      putchar(c);
   }
}
Активен

0x2B|~0x2B

ray

  • Напреднали
  • *****
  • Публикации: 1447
    • Профил
Конвертиране на файлове CP1251->UTF8
« Отговор #3 -: Oct 07, 2005, 06:19 »
Здравей,
Опитай с "uniconv" - част от "yudit" (уникод редактор),или iconv.
Съществува и "recode", виж в Google къде беше.
Май някои от тях са за конвертиране на символите в файл, а други за конвертиране имената на файловете.
Успех.Румен
Активен

Lord Bad

  • Напреднали
  • *****
  • Публикации: 1667
  • Distribution: Fedora 13
  • Window Manager: GNOME
  • Jedi Knight
    • Профил
Конвертиране на файлове CP1251->UTF8
« Отговор #4 -: Oct 07, 2005, 09:48 »
recode съм го ползвал - перфектен е просто.
Активен

Fuelled by Fedora 13 "Goddard"
====================================
Rock it!

mhydra

  • Напреднали
  • *****
  • Публикации: 715
  • Distribution: Fedora, Mandriva
  • Window Manager: GNOME
    • Профил
Конвертиране на файлове CP1251->UTF8
« Отговор #5 -: Oct 07, 2005, 10:50 »
Еми преди известно време и на мен ми трябваше да прекодирам едни неща в една програма на ПХП, обаче се оказа че самото ПХП няма много възможности за кодиране. Докато виж в Перл нещата са други, там само кодировки да искаш . . .
А иначе дори и малкото неща за кодиране  в ПХП сопред мойто мнение на работят добре, не знам защо.
За по-лесно ако трябва да е за някаква програма и искаш сам да си го напишеш можеш да проваш леко някой неща от Перл и след това резултата го хвърляш към ПХП-то.
В Перл има стандартна функция encode() само и подаваш какво трябва да кодира, казваш каква кодировка искаш и след това си щракаш с пръсти  '<img'>  '<img'>  '<img'> .

P.S. Това encode()  е нещо велико, даже съм писал на шлюкавица и след това като го пусна през encode() и си го кодира нормално, докато виж много други функций като пишеш шлюкавица и като го кодираш и се получава пак шлюкавица.

Та encode() е номер едно, само Перл.
Активен

Указвам помощ за всичко свързано с Fedora и Мандрива.
Може да ме търсите на ICQ.

Hapkoc

  • Напреднали
  • *****
  • Публикации: 2117
    • Профил
Конвертиране на файлове CP1251->UTF8
« Отговор #6 -: Oct 07, 2005, 10:55 »
Цитат (alabal @ Окт. 06 2005,22:58)
Няколко текстови фала ....... Кодирането е CP1251 и е използван Times New Roman за шрифт.

Човече, не съм много сигурен какво имаш предвид с това изказване, но досега не съм чувал да можеш да задаваш шрифт на текстов файл.
Активен

icobgr

  • Напреднали
  • *****
  • Публикации: 159
    • Профил
    • WWW
Конвертиране на файлове CP1251->UTF8
« Отговор #7 -: Oct 07, 2005, 11:00 »
Ако искаш да промениш кодировката в текстов файл, става много лесно с KWrite. Отваряш файла с KWrite, нагаждаш кодировката така че да се чете текста (Tools -> Encoding -> cp1251), след която натискаш Save as и си избираш с каква кодировка да го запише.
Активен

Христо Христов

alabal

  • Напреднали
  • *****
  • Публикации: 2173
  • cat /earth/europe/bg/sofia | grep Nacamura
    • Профил
Конвертиране на файлове CP1251->UTF8
« Отговор #8 -: Oct 07, 2005, 12:30 »
Уау, братя! Благодаря много!
Справих се с iconv - бях го изпробвал но не ми се получи, защото бях пропуснал да задам output file - благодаря за man-a , yamahadrums. Използвах таз команда:
iconv -f CP1251 -t UTF-8 файл -o изходящ_файл
Сработи без грешка.

Иначе запомних всички други предложения и ако се наложи - ще ги използвам.
Благодаря много!

@Наркос
По някакви шаманистки критерии (нищо не отбирам от шрифтове) предположих, че файловете са правени под windows и са използвани ttf и wordpad , но вероятно бъркам лошо.
@icobgr
Пробвах нещо подбно с OpenOffice - използвам xfce - опитах да презапиша файловете с TextEncoded(.txt), но резултатът беше отрицателен - това беше и евристичният метод заради който предположих, че има ttf нейде.
Активен

It makes you awful glad that you were born a man.

icobgr

  • Напреднали
  • *****
  • Публикации: 159
    • Профил
    • WWW
Конвертиране на файлове CP1251->UTF8
« Отговор #9 -: Oct 07, 2005, 13:04 »
KWrite няма нищо общо с OpenOffice.org
Но ако искаш да ползваш ООо за кодировки, първо трябва да отвориш файлът с нужната кодировка и след това да го запишеш.
Активен

Христо Христов

romeo_ninov

  • Напреднали
  • *****
  • Публикации: 2155
    • Профил
Конвертиране на файлове CP1251->UTF8
« Отговор #10 -: Oct 09, 2005, 13:24 »
Една добра стартова точка: http://czyborra.com/charsets/cyrillic.html
Активен

0x2B|~0x2B