2010-11-26 7 views

Répondre

10

J'ai écrit un codeur punycode/décodeur ici:

http://code.google.com/p/delphionrails/source/browse/trunk/src/dorPunyCode.pas

utilisation:

function PEncode(const str: UnicodeString): AnsiString; 
var 
    len: Cardinal; 
begin 
    Result := ''; 
    if (PunycodeEncode(Length(str), PPunyCode(str), len) = pcSuccess) and (Length(str) + 1 <> len) then 
    begin 
    SetLength(Result, len); 
    PunycodeEncode(Length(str), PPunyCode(str), len, PByte(Result)); 
    Result := 'xn--' + Result; 
    end else 
    Result := AnsiString(str); 
end; 

Format('http://%s.%s', [PEncode('президент'), PEncode('рф')]); 
+0

pour delphi 7 changement UnicodeString avec WideString –

+1

Merci pour votre réponse et travail! – user515503

Questions connexes