Модераторы: mihanik
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Перекодировка текста 
:(
    Опции темы
Dimbl4
Дата 2.2.2008, 12:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 8
Регистрация: 10.9.2007

Репутация: нет
Всего: нет



Есть txt файл в досовской кодировке, я из него прогой формирую csv файл, получаются одни каракули.
Подскажите как программно перекодировать тескт из DOSовской кодировки в Виндовскую.
 
PM MAIL   Вверх
mihanik
Дата 2.2.2008, 22:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


-=Белый Медведь=-
****


Профиль
Группа: Комодератор
Сообщений: 4054
Регистрация: 24.4.2006
Где: г. Тверь

Репутация: 9
Всего: 109



Код

'********************************************************************        
'*                                                                           
'* Функция   DosToWin (ByVal S)
'* Описание: Переводит строку из досовской кодировки в Windows-кодиpовку
'* Вход    : строка в dos-кодировке
'* Выход   : та же строка, только в Windows-кодиpовке
'*                                                                           
'********************************************************************  
Function DosToWin(ByVal S)
Dim i,k,ss
  ss = ""
  For i=1 To Len(s)
  ' Цикл по всем символам в стpоке
    k = Asc(Mid(s,i,1))
    ' Опpеделяем ANSI-код i-го символа
    ' Изменяем код k на код соответствующего символа в 
    ' Windows-кодиpовке
    If (128 <= k) And (k <= 175) Then
      k=k+64
    ElseIf (224 <= k) And (k <= 239) Then
      k=k+16
    ElseIf k = 240 Then
      k=168
    ElseIf k = 241 Then
      k=184
    End If
    ss=ss+Chr(k) 
  Next
  DosToWin=ss
  ' Возвpащаем пpеобpазованную стpоку
End Function



--------------------
Программистами не рождаются, - это родовая травма...
user posted imageuser posted image
PM MAIL WWW ICQ   Вверх
Akina
Дата 3.2.2008, 00:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


Профиль
Группа: Модератор
Сообщений: 20581
Регистрация: 8.4.2004
Где: Зеленоград

Репутация: 26
Всего: 454



Или API-шные CharToOEM и соответственно OEMToChar


--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
Dimbl4
Дата 4.2.2008, 09:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 8
Регистрация: 10.9.2007

Репутация: нет
Всего: нет



mihanik, пасиб помогло.


Akina
Я нашел такое описание функции:

Public Declare Function OemToChar Lib "user32" Alias "OemToCharA" (ByVal lpszSrc As String, ByVal lpszDst As String) As Long 

Это правильное? Какие аргументы сюда передаются?
PM MAIL   Вверх
Akina
Дата 4.2.2008, 09:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


Профиль
Группа: Модератор
Сообщений: 20581
Регистрация: 8.4.2004
Где: Зеленоград

Репутация: 26
Всего: 454



Цитата(Dimbl4 @  4.2.2008,  10:25 Найти цитируемый пост)
Это правильное?

да 

Цитата(Dimbl4 @  4.2.2008,  10:25 Найти цитируемый пост)
Какие аргументы сюда передаются? 

Строка-источник и строка приемник, собсно... при этом СТРОГО Len(lpszSrc) = Len(lpszDst)


--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Программирование, связанное с MS Office"
mihanik staruha

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами



  • Несанкционированная реклама на форуме запрещена
  • Пожалуйста, давайте своим темам осмысленный, информативный заголовок. Вопль "Помогите!" таковым не является.
  • Чем полнее и яснее Вы изложите проблему, тем быстрее мы её решим.
  • Оставляйте свои записи в "Книге отзывов о работе администрации"
  • А вот тут лежит FAQ нашего подраздела


Если Вам понравилась атмосфера форума, заходите к нам чаще!
С уважением mihanik и staruha.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Программирование, связанное с MS Office | Следующая тема »


 




[ Время генерации скрипта: 0.1111 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.