[C++ Builder]Кодировка

Discussion in 'С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby' started by S0ldeR, 4 Sep 2010.

  1. rudi

    rudi Active Member

    Joined:
    3 Jun 2010
    Messages:
    492
    Likes Received:
    187
    Reputations:
    5

    а ты мой код правил?
    что ты там менял?

    я сделал у себя щас так


    char Str[]="Ы";
    char NewStr[1024];

    char_to_url(Str, NewStr, true);
    Memo4->Text = NewStr;


    и получил %d0%ab

    может попробуешь так еще
    char_to_url(Str, NewStr, false);
    тоесть в конце поставь false
     
    #21 rudi, 4 Sep 2010
    Last edited: 4 Sep 2010
  2. good_man

    good_man New Member

    Joined:
    24 May 2010
    Messages:
    112
    Likes Received:
    3
    Reputations:
    -2
    тогда я вобще не понимаю ничего. какой то тяжелый случай у ТС. надеюсь ктото тебе подскажет в чем соль.
     
  3. S0ldeR

    S0ldeR Banned

    Joined:
    12 Jul 2010
    Messages:
    8
    Likes Received:
    0
    Reputations:
    0
    Изменил void char_to_url(char* Source, char *Dest, bool Type)
    на
    void char_to_url(WideString Source, char *Dest, bool Type)

    все стало ок

    Ы стало %d0%ab но контакт все равно не понимает
     
  4. rudi

    rudi Active Member

    Joined:
    3 Jun 2010
    Messages:
    492
    Likes Received:
    187
    Reputations:
    5
    если ТС хочет отправить текст из Memo
    Form55->Memo13->Lines->Strings[rand];
    я бы делал так

    char Text[256];
    strcpy(Text, Form55->Memo13->Lines->Strings[rand].c_str());

    но у него на это пишет
    [BCC32 Error] Unit1.cpp(1730): E2034 Cannot convert 'wchar_t *' to 'char[]'
    значит найди как перевести все это дело в char

    ибо функция char_to_url
    принимает только строки типа char


    попробуй вконце поставь false

    char_to_url(text, newtext, false);
     
    #24 rudi, 4 Sep 2010
    Last edited: 4 Sep 2010
  5. rudi

    rudi Active Member

    Joined:
    3 Jun 2010
    Messages:
    492
    Likes Received:
    187
    Reputations:
    5
    значит ты чтото не так делаешь
    контакт принимает русские слова имено в URL кодировке
    тоесть конвертатор все верно конвертироавал
    я щас сделал отправку сообщения в контакте слова привет
    и посмотрел снифером как оно выглядит
    и у видел в Post запросе слово привет как
    %20%D0%BF%D1%80%D0%B8%D0%B2%D0%B5%D1%82
     
  6. good_man

    good_man New Member

    Joined:
    24 May 2010
    Messages:
    112
    Likes Received:
    3
    Reputations:
    -2
    а я вконтакт отправляю в UTF8 и все норм. вобще не понимаю в чем соль. такие жоские различия в билдерах разве могут быть?