Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Общий форум

Страница: 1 |

 

  Вопрос: Работа с кодировкой ... Добавлено: 04.04.03 23:41  

Автор вопроса:  Gravity

Я сделал одну программку ... замена блокнота, всё бы нормально, но !!! Я сделал в ней возможность перекодировки Win=>Dos, Dos=>Win ... а как сделать чтобы программа сама определяла кодировку и сразу сама перекодировала  ...  ну короче автоопределение кодировки (например как The Bat!)

P.S.: Только с примерчиком пожалуйста ...

Ответить

  Ответы Всего ответов: 5  

Номер ответа: 1
Автор ответа:
 P



ICQ: 346632205 

Вопросов: 5
Ответов: 86
 Профиль | | #1 Добавлено: 05.04.03 01:19

Вот тебе примерчик, вырезка из статьи, из какой не помню:

 

Определение кодировки текста

'пpовеpяем тип кодиpовки ANSI или ASCII

'беpем пеpвые 1000 байт еcли это возможно. Hевозможно - меньше.

l& = Len(rtbView.Text)

If l& > 1000 Then l& = 1000

'копиpyем yчаcток текcта из RichTextBox в пеpеменнyю, иначе тоpмоз обеcпечен

s$ = Left$(rtbView.Text, l&;)

'обнyляем флажки

fdo% = 0

fwo% = 0

'пpоcматpиваем кycок текcта

For n% = 1 To l&

'вытаcкиваем очеpедной cимвол

c$ = Mid$(s$, n%, 1)

'еcли это pyccкая "о" в DOS кодиpовке то инкpементиpyем cчетчик

If c$ = Chr$(174) Then fdo% = fdo% + 1

'еcли это pyccкая "о" в Win кодиpовке то инкpементиpyем cчетчик

If c$ = Chr$(238) Then fwo% = fwo% + 1

Next

'ycтанавливаем в конфиге тип пpоcмотpа по дефолтy

If fdo% > fwo% Then 'это явно ДОC-текcт

Else 'это явно Win-текcт

 

Я пpобовал c деcяток текcтов. Ошибcя он на одном файле (напиcал что

Win-кодиpовка, хотя это ДОC) - autoexec.bat. ;-)

Да и то в нем pyccкого ничего небыло. ;)

Да на больших файлах опpеделение безошибочно, даже еcли там кyча пcевдогpафики.

Hа маленьких (меньше 50 байт) возможны глюки, еcли бyква "о" не вcтpечаетcя,

или вcтpечаетcя меньше чем "ю". Т.е. еcли файл cоcтоит из текcта:

"Хэппи бёздей тy ю"

то он выдаcт что это Win кодиpовка ("о" нет, а "ю" он пpимет за Выневcкyю "о".)

Ответить

Номер ответа: 2
Автор ответа:
 Gravity



Вопросов: 6
Ответов: 120
 Профиль | | #2 Добавлено: 05.04.03 12:46
Спасиб .... Только у меня ещё вопрос, а как на счёт Windows-1251, KOI8-R, и других ... ну тоже автоопределение..

Ответить

Номер ответа: 3
Автор ответа:
 P



ICQ: 346632205 

Вопросов: 5
Ответов: 86
 Профиль | | #3 Добавлено: 05.04.03 16:50

не, автоопределения Windows-1251, KOI8-R у меня нет, есть только модуль по перекодировке

Ответить

Номер ответа: 4
Автор ответа:
 Chill



ICQ: 554200 

Вопросов: 101
Ответов: 343
 Профиль | | #4 Добавлено: 05.04.03 20:23

Вот тебе алгоритмы, почитай полезная штука: http://ivr.webzone.ru/articles/defcod_2/index.htm

Если что-нибудь понадобится - пиши, но у меня тока с win - dos пример есть для вб.нет, хотя это и не важно

Ответить

Номер ответа: 5
Автор ответа:
 Gravity



Вопросов: 6
Ответов: 120
 Профиль | | #5 Добавлено: 05.04.03 21:05

Спасиб всем .. :)

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам