Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Прочее";
Текущий архив: 2008.09.14;
Скачать: [xml.tar.bz2];

Вниз

Абракадабра в vCard - с каким бубном вокруг нее попрыгать ?   Найти похожие ветки 

 
Сергей М. ©   (2008-07-23 15:40) [0]

Обратился ко мне знакомый (русский) со слезной просьбой, мол, помоги, мол, на тебя вся надежда ..

Суть: знакомый сдал в ремонт свою мобилу (SonyEricsson 610-й модели, если он не ошибся), флеш-карту перед этим вытащил из аппарата. Тел.книга у него хранилась именно там.
И тут его приспичило срочно найти тел.координаты кого-то там, кто заведомо фигурировал в этой книге.

Пожалел я знакомого, засунул карту в ридер, вытащил оттуда PB_Backup.vcf и попытался неглядя импортнуть ее средставами MS Outlook.

Ан не тут-то было ! MSO молча зацепил первую vCard-запись из указанногоь ему файла и показал мне "крякозябры" вместо имени конт.персоны

Тут же пытаюсь скормить файл попавшейся под руку утилитке Dawn 5.3 - она вообще подавилась файлом и упала, перед падением показав мне те же "крякозябры" в 1-й записи, что и в MSO

Ладно, думаю, сейчас разберемся детально, что это за каприз.

Открываю файл в редакторе, вижу (дословная цитат 1-й записи):

BEGIN:VCARD
VERSION:2.1
N;CHARSET=UTF-8;ENCODING=QUOTED-PRINTABLE:=D0=9C=D0=B8=D1=85=D0=B0=D0=B8=D0=
=BB;=D0=90=D0=B2=D0=B5=D1=80=D1=8C=D1=8F=D0=BD=D0=BE=D0=B2
FN;CHARSET=UTF-8;ENCODING=QUOTED-PRINTABLE:=D0=90=D0=B2=D0=B5=D1=80=D1=8C=
=D1=8F=D0=BD=D0=BE=D0=B2 =D0=9C=D0=B8=D1=85=D0=B0=D0=B8=D0=BB
TITLE;CHARSET=UTF-8;ENCODING=QUOTED-PRINTABLE:=D0=A1=D1=82.=D0=BC=D0=B5=D0=
=BD=D0=B5=D0=B4=D0=B6=D0=B5=D1=80
ORG;CHARSET=UTF-8;ENCODING=QUOTED-PRINTABLE:=D0=90=D0=B2=D1=82=D0=BE=D0=BC=
=D0=B8=D1=80
TEL;CELL:+00000000000
ADR;WORK;CHARSET=UTF-8;ENCODING=QUOTED-PRINTABLE:;;=D0=9C=D0=B8=D1=80=D0=BD=
=D0=B0=D1=8F,162;;;;
X-IRMC-LUID:000200000001
END:VCARD


Бубен типа

Utf8ToAnsi(IdDecoderQuetedPrintable.DecodeString(.. QP-кодированные строки из процитированного оригинала ..);

не принес ожидаемого результата.

Вопрос : с каким еще бубном попрыгать ?)


 
Johnmen ©   (2008-07-23 15:46) [1]

Похоже с BASE64 попрыгать :)


 
Ляпа   (2008-07-23 15:51) [2]

StringReplace (убрать все "="), затем UTF8ToANSI
d09CD0B8D185D0B0D0B8D0BBD090D0B2D0B5D180D18CD18FD0BDD0BED0B2
МихаилАверьянов


 
Сергей М. ©   (2008-07-23 15:51) [3]


> Johnmen ©   (23.07.08 15:46) [1]


С какого перепугу это BASE64 - то ?
Написано же ENCODING=QUOTED-PRINTABLE)

Даже если в Sony Ericcson решили запутать вражескую разведку, все равно на Base64-кодирование это ни разу не похоже ..


 
oldman ©   (2008-07-23 15:53) [4]


> Тут же пытаюсь скормить файл попавшейся под руку утилитке
> Dawn 5.3 - она вообще подавилась файлом и упала, перед падением
> показав мне те же "крякозябры" в 1-й записи, что и в MSO


Я бы после этого направил карту в мусорное ведро вместе со знакомым...


 
Johnmen ©   (2008-07-23 16:00) [5]


> Сергей М. ©   (23.07.08 15:40) 

Возможно, это Hex"ы UTF8.


 
Медвежонок Пятачок ©   (2008-07-23 16:04) [6]

Не возможно, а так и есть


 
Сергей М. ©   (2008-07-23 16:05) [7]


> Ляпа   (23.07.08 15:51) [2]


Голова !))

Спасибо за бубен)


> Johnmen ©   (23.07.08 16:00) [5]


Я уже дотумкал.

Но мне просто любопытно - эт что, "нормальная" практика для vCard или это дурацкие выкрутасы конкретного разработчика конкретной трубы ?


 
Медвежонок Пятачок ©   (2008-07-23 16:08) [8]

что бэйс что квоттед - для гарантированной переносимости через анси текст


 
Palladin ©   (2008-07-23 16:13) [9]


> Но мне просто любопытно - эт что, "нормальная" практика
> для vCard или это дурацкие выкрутасы конкретного разработчика
> конкретной трубы ?

хем... в nokia9500 так же... что наводит на мысли...
дома на самсунге гляну )


 
oldman ©   (2008-07-23 16:16) [10]


> Сергей М. ©   (23.07.08 16:05) [7]
>
> > Ляпа   (23.07.08 15:51) [2]
>
>
> Голова !))
>
> Спасибо за бубен)


А еще мастер...
:)))


 
Сергей М. ©   (2008-07-23 16:41) [11]


> Медвежонок Пятачок ©   (23.07.08 16:08) [8]


Дык никто и не спорит)

Вопрос-то в другом - почему и "хваленый" MSO и довольно известная в Тырнете утилитка Dawn (а может и другое ПО с аналогичной функц-ю - проверять не собираюсь, оно мне нафиг не надо) давятся таким QP-кодом ?)

Что делать, если приспичит, - это понятно, а вот кто виноват ?)


 
Медвежонок Пятачок ©   (2008-07-23 16:53) [12]

Мне более интересно почему utf8toansi эти хексы проглотила без проблем :)


 
Тын-Дын ©   (2008-07-23 16:59) [13]


> Медвежонок Пятачок ©   (23.07.08 16:53) [12]
> Мне более интересно почему utf8toansi эти хексы проглотила
> без проблем :)


Кури букварь и HexToBin.


 
Медвежонок Пятачок ©   (2008-07-23 17:04) [14]

Ай маладца. Ты знал!


 
Сергей М. ©   (2008-07-23 17:12) [15]


> Ляпа   (23.07.08 15:51) [2]
>  (убрать все "=")


Ну ты еще и точку с запятой убрал, хотя это уже не суть как важно.

Важней что это я зря бучу на Инди поднял - все, оказывается, чудесно декодируется строчкой

ShowMessage(Utf8ToAnsi(IdDecoderQuetedPrintable.DecodeString("=D0=9C=D0=B8 =D1=85=D0=B0=D0=B8=D0=BB;=D0=90=D0=B2=D0=B5=D1=80=D1=8C=D1=8F=D0=BD=D0=BE=D0=B2" ));

но, по прежнему, нихрена не декодируется средствами MSO)

Подозреваю, что MSO и иже с ними не понимают вот что:

N;CHARSET=UTF-8;ENCODING=QUOTED-PRINTABLE:=D0=9C=D0=B8=D1=85=D0=B0=D0=B8=D0=
=BB;=D0=90=D0=B2=D0=B5=D1=80=D1=8C=D1=8F=D0=BD=D0=BE=D0=B2

Перенос в строки в с QP-кодированными данными с нарушением правил QP-кодирования (см. выделенный знак равенства) - в этом, видимо, причина.


 
Тын-Дын ©   (2008-07-23 17:20) [16]

Удалено модератором


 
Медвежонок Пятачок ©   (2008-07-23 17:33) [17]

Удалено модератором



Страницы: 1 вся ветка

Форум: "Прочее";
Текущий архив: 2008.09.14;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.49 MB
Время: 0.061 c
3-1205766628
dest81
2008-03-17 18:10
2008.09.14
dbgrideh и фильтрация


15-1216815313
oldman
2008-07-23 16:15
2008.09.14
Значек в трее без процесса?


3-1205489996
Павел Калугин
2008-03-14 13:19
2008.09.14
Грабли с MySql


15-1216723457
voe
2008-07-22 14:44
2008.09.14
Какой лучше использовать компанент для FTP клиента?


15-1216731998
No_Dead
2008-07-22 17:06
2008.09.14
тоже от скуки интересно стало («всё пожать»)





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский