Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2017.01.15;
Скачать: CL | DM;

Вниз

Как перевести текст в формат DOS   Найти похожие ветки 

 
Andrey K   (2015-02-08 00:05) [0]

Доброго времени суток. Пишу редактор для станков с ЧПУ. На станке досовская операционка. УП (управляющая программа) выводит сообщения для оператора. Как перевести сообщения в досовский формат при передаче УП на станок. Или где можно про это почитать.


 
Юрий Зотов ©   (2015-02-08 00:27) [1]

Насколько помню, CharToOem <-> OemToChar. Инструкции в гугле.


 
Andrey K   (2015-02-08 00:33) [2]

Спасибо


 
Dennis I. Komarov ©   (2015-02-08 01:02) [3]

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


 
i2e   (2015-02-09 14:02) [4]

пользовался таким:

function TextDosToWin(S: String): String;
var I, LenS: Integer;
   P: PChar;
begin
 P := PChar(S);    LenS := StrLen(P);    I := 1;
 while I <= LenS do          // &#225;&#251;&#235;&#238; &#239;&#238;&#228;&#239;&#240;&#224;&#226;&#235;&#229;&#237;&#238; "<="
 begin
   if ( Ord(S[I]) = $F0 ) then S[I] := Chr($A8) else     // &#168;
   if ( Ord(S[I]) = $F1 ) then S[I] := Chr($B8) else     // &#184;
   if ( Ord(S[I]) >= $A0 ) and ( Ord(S[I]) <= $AF ) then //&#224;-&#239;
     S[I] := Chr( Ord(S[I]) + $40 ) else
   if ( Ord(S[I]) >= $E0 ) and ( Ord(S[I]) <= $EF ) then //&#240;-&#255;
     S[I] := Chr( Ord(S[I]) + $10 ) else
   if ( Ord(S[I]) >= $80 ) and ( Ord(S[I]) <= $9F ) then //&#192;-&#223;
     S[I] := Chr( Ord(S[I]) + $40 );
   inc(I);
 end;
 TextDosToWin := S;
end;

function TextWinToDos(S: String): String;
var I, LenS: Integer;
   P: PChar;
begin
 P := PChar(S);    LenS := StrLen(P);    I := 1;
 while I <= LenS do
 begin
   if ( Ord(S[I]) = $A8 ) then S[I] := Chr($F0) else     // &#168;
   if ( Ord(S[I]) = $B8 ) then S[I] := Chr($F1) else     // &#184;
   if ( Ord(S[I]) >= $E0 ) and ( Ord(S[I]) <= $EF ) then //&#224;-&#239;
     S[I] := Chr( Ord(S[I]) - $40 ) else
   if ( Ord(S[I]) >= $F0 ) and ( Ord(S[I]) <= $FF ) then //&#240;-&#255;
     S[I] := Chr( Ord(S[I]) - $10 ) else
   if ( Ord(S[I]) >= $C0 ) and ( Ord(S[I]) <= $DF ) then //&#192;-&#223;
     S[I] := Chr( Ord(S[I]) - $40 );
   inc(I);
 end;
 TextWinToDos := S;
end;


 
i2e   (2015-02-09 14:03) [5]

в комментариях:
// Ё
// ё
// а-п
// р-я
// А-Я



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

Текущий архив: 2017.01.15;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.023 c
3-1308531630
Дмитрий С
2011-06-20 05:00
2017.01.15
Mysql, большой blob. как лучше?


15-1451856604
Юрий
2016-01-04 00:30
2017.01.15
С днем рождения ! 4 января 2016 понедельник


2-1421889993
duponamk
2015-01-22 04:26
2017.01.15
Сортировка данных по нажатию на заголовок DBGrid


15-1456003937
Юрий
2016-02-21 00:32
2017.01.15
С днем рождения ! 21 февраля 2016 воскресенье


15-1449842599
Fox
2015-12-11 17:03
2017.01.15
Приложение под Андроид на Java