AXForum  
Вернуться   AXForum > Microsoft Dynamics NAV > NAV: Программирование
NAV
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск Все разделы прочитаны

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 03.09.2003, 11:34   #1  
ar_raven is offline
ar_raven
Участник
 
23 / 10 (1) +
Регистрация: 21.08.2003
Адрес: Ярославль
ANSI to ASCII
Как преобразовать ANSI в ASCII
и ASCII в ANSI ???
Старый 03.09.2003, 16:11   #2  
Lexi is offline
Lexi
Участник
 
50 / 10 (1) +
Регистрация: 07.04.2003
:)
Просто!

Смотря на чем ты будешь реализовывать ?

Могу кинуть на Delphi.

p.s.
В Navi есть Dos2Win.
Старый 03.09.2003, 16:32   #3  
Lexi is offline
Lexi
Участник
 
50 / 10 (1) +
Регистрация: 07.04.2003
;)
попробуй это.


p.s.

правда я ее не пробовал. нашел в сети.

если опишешь цель могу что нибудь другое предложить.
Вложения
Тип файла: zip ansi-asciiconv.zip (4.1 Кб, 179 просмотров)
Старый 05.09.2003, 14:01   #4  
ar_raven is offline
ar_raven
Участник
 
23 / 10 (1) +
Регистрация: 21.08.2003
Адрес: Ярославль
Написал подобие Dod2Win только для обратного действия, но в тексте из DBF-ки из 1С не распознаются заглавные буквы и пару тройку маленьких (увеличение промежутка для замены результетов не дает) ........ :-(
Старый 05.09.2003, 14:06   #5  
Rungart is offline
Rungart
Участник
 
491 / 12 (1) ++
Регистрация: 13.01.2003
Адрес: Украина
Может быть, стоит выложить функцию в форум? Как знать, может кто-нибудь обойдет эту проблему.
Старый 05.09.2003, 14:16   #6  
ar_raven is offline
ar_raven
Участник
 
23 / 10 (1) +
Регистрация: 21.08.2003
Адрес: Ярославль
WinText := Selected;
DosText := '';
REPEAT
Pos := Pos + 1;
OneChar := WinText[Pos];
IF (OneChar >= 240) AND (OneChar <= 255) THEN
OneChar := OneChar - 16
ELSE
IF (OneChar >= 192) AND (OneChar <= 239) THEN
OneChar := OneChar - 64;
DosText := DosText + FORMAT(OneChar);
UNTIL Pos = STRLEN(WinText);
Selected:=DosText;
Старый 05.09.2003, 15:42   #7  
Rungart is offline
Rungart
Участник
 
491 / 12 (1) ++
Регистрация: 13.01.2003
Адрес: Украина
Попробуй так:
Запускаешь regedit
Находишь ветку
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Jet\4.0\Engines\Xbase
возможно,
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Jet\3.5\Engines\Xbase
находишь параметр DataCodePage
устанавливаешь его в значение ANSI.
Должно заработать. Нашел здесь в самом конце :
http://www.userland.narod.ru/softlab1.htm
На всякий случай, сохрани реестр .
Старый 05.09.2003, 16:07   #8  
ar_raven is offline
ar_raven
Участник
 
23 / 10 (1) +
Регистрация: 21.08.2003
Адрес: Ярославль
Большое спасибо!!!! Все работает!!!!!
Старый 29.09.2010, 11:44   #9  
Beast-L is offline
Beast-L
Участник
Аватар для Beast-L
 
104 / 21 (1) +++
Регистрация: 20.10.2006
Адрес: Киев
str dos2ansi(str _str)
{
str res;
InteropPermission interopPerm;
System.Text.Decoder dec;
System.String buff;
System.Text.Encoding Dos;
System.Text.Encoding Ansi;
System.Text.Encoding Utf;
System.Byte[] ba;
int len;
System.Char[] ca;
;

interopPerm = new InteropPermission(InteropKind::ClrInterop);
interopPerm.assert();

Dos = System.Text.Encoding::GetEncoding(866);
Ansi = System.Text.Encoding::GetEncoding(1251);

dec = Dos.GetDecoder();
ba = Ansi.GetBytes(_str);
len = dec.GetCharCount(ba, 0, ba.get_Length());
ca = new System.Char[len]();
dec.GetChars(ba, 0, ba.get_Length(), ca, 0);

res = new System.String(ca);

CodeAccessPermission::revertAssert();

return res;
}
За это сообщение автора поблагодарили: jonny (3), ex3em (1), Mileyko (1).
 

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 13:36.
Powered by vBulletin® v3.8.5. Перевод: zCarot
Контактная информация, Реклама.