Íåäàâíî äîáàâëåííûå èñõîäíèêè

•  Animation Loaders  1 045

•  DeLiKaTeS Tetris (Òåòðèñ)  5 978

•  TDictionary Custom Sort  7 914

•  Fast Watermark Sources  7 575

•  3D Designer  10 815

•  Sik Screen Capture  8 151

•  Patch Maker  8 340

•  Àéáîëèò (remote control)  8 392

•  ListBox Drag & Drop  7 243

•  Äîñêà äëÿ èãðû Ðåâåðñè  101 460

•  Ãðàôè÷åñêèå ýôôåêòû  8 449

•  Ðèñîâàíèå ïî ìàñêå  7 814

•  Ïåðåòàñêèâàíèå èçîáðàæåíèé  6 407

•  Canvas Drawing  6 790

•  Ðèñîâàíèå Ëóíû  6 723

•  Ïîâîðîò èçîáðàæåíèÿ  5 831

•  Ðèñîâàíèå ñòåðæíåé  4 779

•  Paint on Shape  3 476

•  Ãåíåðàòîð êðîññâîðäîâ  4 486

•  Ãîëîâîëîìêà Paletto  3 616

•  Òåîðåìà Ìîíæà îá îêðóæíîñòÿõ  4 404

•  Ïàçë Numbrix  2 857

•  Çàáîðû è êîììèâîÿæåðû  3 808

•  Èãðà HIP  2 576

•  Èãðà Go (Ãî)  2 591

•  Ñèìóëÿòîð ëèôòà  2 969

•  Ïðîãðàììà óêëàäêè ïëèòêè  2 399

•  Ãåíåðàòîð ëàáèðèíòà  3 152

•  Ïðîâåðêà ÷èñëîâîãî ââîäà  2 634

•  HEX View  3 045

 
ñêðûòü

  Ôîðóì  

Delphi FAQ - ×àñòî çàäàâàåìûå âîïðîñû

| Áàçû äàííûõ | Ãðàôèêà è Èãðû | Èíòåðíåò è Ñåòè | Êîìïîíåíòû è Êëàññû | Ìóëüòèìåäèà |
| ÎÑ è Æåëåçî | Ïðîãðàììà è Èíòåðôåéñ | Ðàáî÷èé ñòîë | Ñèíòàêñèñ | Òåõíîëîãèè | Ôàéëîâàÿ ñèñòåìà |



Delphi Sources

Óíèâåðñàëüíîå è áûñòðîå ïåðåêîäèðîâàíèå ñòðîêè èç êîäèðîâîê ANSI, KOI8-R, KOI8-U, OEM-DOS, ISO



Àâòîð: VEG

{ **** UBPFD *********** by delphibase.endimus.com ****
>> Óíèâåðñàëüíîå è áûñòðîå ïåðåêîäèðîâàíèå ñòðîêè èç êîäèðîâîê
ANSI, KOI8-R, KOI8-U, OEM/DOS, ISO

 ýòîé ôóíêöèè èñïîëüçóåòñÿ ýëåìåíòàðíûé àëãîðèòì, êîòîðûé ïî ñêîðîñòè ðàáîòû
îïåðåæàåò ñâîè àíàëîãè, è ïîçâîëÿåò ïåðåêîäèðîâàòü òåêñò èç ðàçëè÷íûõ êîäèðîâîê.
Äëÿ ïåðåêîäèðîâàíèÿ ñòðîêè èñïîëüçóåòñÿ óíèâåðñàëüíàÿ ôóíêöèÿ ConvertEncoding,
ãäå â êà÷åñòâå ïåðâîãî ïàðàìåòðà âûñòóïàåò ñòðîêà, êîòîðóþ íåîáõîäèìî
ïåðåêîäèðîâàòü, à â êà÷åñòâå âòîðîãî - ìàòðèöà ïåðåêîäèðîâàíèÿ, êîòîðàÿ
îïðåäåëÿåò èç êàêîé êîäèðîâêè â êàêóþ íåîáõîäèìî ïåðåêîäèðîâàòü äàííóþ ñòðîêó.

 ýòîé âåðñèè èìååòñÿ 6 âèäîâ ìàòðèö ïåðåêîäèðîâàíèÿ (òèï TCodeMatrix):
1. cmAnsiToKoi8R - ïåðåêîäèðóåò ñòðîêó èç êîäèðîâêè ANSI â êîäèðîâêó KOI8-R
2. cmAnsiToKoi8U - ïåðåêîäèðóåò ñòðîêó èç êîäèðîâêè ANSI â êîäèðîâêó KOI8-U
3. cmKoi8RToAnsi - ïåðåêîäèðóåò ñòðîêó èç êîäèðîâêè KOI8-R â êîäèðîâêó ANSI
4. cmKoi8UToAnsi - ïåðåêîäèðóåò ñòðîêó èç êîäèðîâêè KOI8-U â êîäèðîâêó ANSI
5. cmOemDosToAnsi - ïåðåêîäèðóåò ñòðîêó èç êîäèðîâêè OEM/DOS â êîäèðîâêó ANSI
6. cmIsoToAnsi - ïåðåêîäèðóåò ñòðîêó èç êîäèðîâêè ISO â êîäèðîâêó ANSI

Çàâèñèìîñòè: System;
Àâòîð:       VEG, veg@tut.by, Ðåñïóáëèêà Áåëàðóñü - Ñëóöê
Copyright:   ©VEG, 31.10.2003
Äàòà:        31 îêòÿáðÿ 2003 ã.
***************************************************** }

type // Òèï ìàòðèö ïåðåêîäèðîâêè
  TCodeMatrix = array[1..255] of char;
const // Ìàòðèöû ïåðåêîäèðîâêè
  FirstCodes =
    #1#2#3#4#5#6#7#8#9#10#11#12#13#14#15#16#17#18#19#20#21#22#23#24#25#26#27#28+
   #29#30#31' !"#$%&''()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^' +
    '_`abcdefghijklmnopqrstuvwxyz{|}~';
  cmAnsiToKoi8R: TCodeMatrix = FirstCodes // ver 1.0, ©VEG, 31.10.2003
  + '€�‚ƒ„…†‡ˆ‰Š‹Œ�Ž��‘’“”•–—˜™š›œ�žŸ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·£—º»¼½¾¿áâ÷çäåöúé'
    + 'êëìíîïðòóôõæèãþûýÿùøüàñÁÂ×ÇÄÅÖÚÉÊËÌÍÎÏÐÒÓÔÕÆÈÃÞÛÝßÙØÜÀÑ';
  cmAnsiToKoi8U: TCodeMatrix = FirstCodes // ver 0.8, ©VEG, 31.10.2003
  + '€�‚ƒ„…†‡ˆ‰Š‹Œ�Ž��‘’“”•–—˜™š›œ�žŸ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·£—º»¼½¾¿áâ÷çäåöúé'
    + 'êëìíîïðòóôõæèãþûýÿùøüàñÁÂ×ÇÄÅÖÚÉÊËÌÍÎÏÐÒÓÔÕÆÈÃÞÛÝßÙØÜÀÑ';
  cmKoi8RToAnsi: TCodeMatrix = FirstCodes // ver 1.0, ©VEG, 31.10.2003
  + '-¦-¬L-++T++---¦¦---?¦•v??? ?°?·?=¦-¸ã㬬¬LLL---¦¦¦¦¨¦¦TTT¦¦¦+++©þàáöäåôãõ'
    + 'èéêëìíîïÿðñòóæâüûçøýù÷úÞÀÁÖÄÅÔÃÕÈÉÊËÌÍÎÏßÐÑÒÓÆÂÜÛÇØÝÙ×Ú';
  cmKoi8UToAnsi: TCodeMatrix = FirstCodes // ver 1.0, ©VEG, 31.10.2003
  + '-¦-¬L-++T++---¦¦---?¦•v??? ?°?·?=¦-¸ºã³¿¬LLL-´¢¦¦¦¦¨ª¦²¯T¦¦¦+¥¡©þàáöäåôãõ'
    + 'èéêëìíîïÿðñòóæâüûçøýù÷úÞÀÁÖÄÅÔÃÕÈÉÊËÌÍÎÏßÐÑÒÓÆÂÜÛÇØÝÙ×Ú';
  cmOemDosToAnsi: TCodeMatrix = FirstCodes // ver 1.0, ©VEG, 31.10.2003
  + 'ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖרÙÚÛÜÝÞßàáâãäåæçèéêëìíîï---¦+¦¦¬¬¦¦¬---¬L+T+-+¦¦L'
    + 'ã¦T¦=+¦¦TTLL-ã++----¦¦-ðñòóôõö÷øùúûüýþÿ¨¸ªº¯¿¡¢°•·v¹¤¦ ';
  cmIsoToAnsi: TCodeMatrix = FirstCodes // ver 1.0, ©VEG, 31.10.2003
  + '????????????????????????˜??????? ¨€�ª½²¯£ŠŒŽ�­¡�ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖר'
    + 'ÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõö÷øùúûüýþÿ¹¸�ƒº¾³¿¼šœž�§¢Ÿ';

function ConvertEncoding(sIn: string; sCoding: string): string;
//sIn - ñòðîêà äëÿ ïåðåêîäèðîâàíèÿ
//sCoding - ìàòðèöà äëÿ ïåðåêîäèðîâàíèÿ
//result - ïîëó÷åííàÿ ïåðåêîäèðîâàííàÿ ñòðîêà
var
  iFtd: integer;
begin
  for iFtd := 1 to length(sIn) do
    result := result + sCoding[ord(sIn[iFtd])];
end; // ver 1.0, (C)Vrublevsky Evgeny Gennadyevich (BELARUS/SLUTSK), 31.10.2003

Ïðèìåð èñïîëüçîâàíèÿ:

var
  sOut: string;
begin
  sOut := ConvertEncoding(ConvertEncoding('Òåñò!', cmAnsiToKoi8R), cmKoi8RToAnsi);
end;




Ïîõîæèå ïî òåìå èñõîäíèêè

ISOLA (òî÷êè)

Poison ARP




Copyright © 2004-2026 "Delphi Sources" by «SiteAnalyzer». Delphi World FAQ

Ãðóïïà ÂÊîíòàêòå