Visual Basic, .NET, ASP, VBScript
 

   
   
     

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

Страница: 1 |

 

  Вопрос: Как перевести символ в код (чисто)? Добавлено: 18.06.04 20:50  

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

Asc - неподходит, так как эта ASII (или как там она) содержит не все символы, надо как-то в унивирсальную кодировку, в юникод что-ли.

Ответить

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

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


 

Разработчик Offline Client

Вопросов: 236
Ответов: 8362
 Профиль | | #1 Добавлено: 18.06.04 20:51
упс :)))) вы не пугайтесь я не новый русский :) "Как перевести символ в код (чисто)? "
не "чисто", а "число"... :)

Ответить

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


 

Разработчик Offline Client

Вопросов: 236
Ответов: 8362
 Профиль | | #2 Добавлено: 18.06.04 21:00
а я кажись разобрался, это мне надо весь файл в цифры превратить и записать, я в теперь в hex символ перевожу

For x = 1 To lof (1)
Get #1, x, h1
h1 = hex(h1) ' это будет hex
next x

Это... а как потом назад? из hex в мою переменную h1, чтоб потом в Put #1, , h1 в файл короче записать

Ответить

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



Разработчик Offline Client

Вопросов: 47
Ответов: 621
 Web-сайт: intermult.boom.ru
 Профиль | | #3
Добавлено: 18.06.04 21:09
Может это подойдет: http://vbnet.ru/forum/show.aspx?id=41076
(1 ответ).

Ответить

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



Разработчик Offline Client

ICQ: 233286456 

Вопросов: 34
Ответов: 5445
 Web-сайт: hw.t-k.ru
 Профиль | | #4
Добавлено: 19.06.04 01:50
Ну типа мона так vba.AscW()

Ответить

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


 

Разработчик Offline Client

Вопросов: 236
Ответов: 8362
 Профиль | | #5 Добавлено: 19.06.04 13:49
2 sne
Чо то не понял, давай по подробней


2 ISpy О! точно, хотя я уже подобное сделал только по другому. Оказывается я уже задавал подобный вопрос, эх был бы поиск... всёравно спасибо что ткнул меня на мой же топик :)

Ответить

Номер ответа: 6
Автор ответа:
 @CyRax PTR



ICQ: 204447456 

Вопросов: 28
Ответов: 664
 Web-сайт: basicproduction.nm.ru/
 Профиль | | #6
Добавлено: 19.06.04 14:31
 VB может переводить в число только строку с десятичным числом.

 Если хочешь, то вот адаптированная под мой VBASM часть моего же примера "Конвертер систем счисления" (можешь найти на моём сайте).

Function TOOLS_ToDEC_Byte(NumSystem As Integer, number$) As Byte
 number$ = UCase$(number$)
 ;Dim DecNum As Long
 ;DecNum = 0
 ;Dim Convert As Integer
 For Convert = 1 To Len(number$)
  ;Dim SysNum$
  SysNum$ = Mid$(number$, Convert, 1)
  If Asc(SysNum$) > 64 Then SysNum$ = LTrim$(Str$((Asc(SysNum$) - 65) + 10))
  ;DecNum = DecNum + Val(SysNum$)
  If Convert = Len(number$) Then Exit For
  ;DecNum = DecNum * NumSystem
 Next Convert
 TOOLS_ToDEC_Byte = DecNum
End Function

===
 ;Dim CodeASC as Byte
 NumberHex="FF"
 Используй так
 CodeASC=TOOLS_ToDEC_Byte(16, NumberHex)

 Только помни, шестнадцатиричное число в строчном виде (это то что ты получил с помощью ф-и HEX$) занимает 2 символа. Например FF(1 байт)=255, FFFF(2 байта) = 65535, FFFFFFFF(4 байта) - Беззнаковый Long.

 Когда преобразовываешь с помощью HEX$, не забывай проверять длину результата. Если меньше 2-х символов, то просто добавляй нолик:
 h1 = hex(h1)
 If Len(h1)<2 then h1="0" & h1

 Если обратно, то в цикле с шагом 2 считываешь по 2 байта, а затем применяешь ф-ю которую я тебе написал.

Ответить

Номер ответа: 7
Автор ответа:
 sne



Разработчик Offline Client

ICQ: 233286456 

Вопросов: 34
Ответов: 5445
 Web-сайт: hw.t-k.ru
 Профиль | | #7
Добавлено: 19.06.04 15:00
2hacker, вопрос был:

Asc - неподходит, так как эта ASII (или как там она) содержит не все символы, надо как-то в унивирсальную кодировку, в юникод что-ли...

Вот это как раз и есть для Unicode... там есть все...

Asc - для ASCII (Chr)
AscW - юникодовый аналог (ChrW)

Ответить

Номер ответа: 8
Автор ответа:
 DaSharm



ICQ: 780477 

Вопросов: 72
Ответов: 1297
 Web-сайт: dasharm.com
 Профиль | | #8
Добавлено: 19.06.04 19:25
в аски тоже все есть, переводим в байты:
hex(asc("a";))
а если хочешь примитивно шифровать, то переводи так:
hex(asc("a";)+5)
и расшифровуй так:
chr(HEX_char-5)

Ответить

Номер ответа: 9
Автор ответа:
 sne



Разработчик Offline Client

ICQ: 233286456 

Вопросов: 34
Ответов: 5445
 Web-сайт: hw.t-k.ru
 Профиль | | #9
Добавлено: 19.06.04 20:00
DaSharm, это у нас так, а попробуй китайцам это объяснить :)))

например chrw(256) ошибки не вызовет, в отличие от chr(256)...
И для функции Asc то-же самое... мало-ли иероглифоф напридумывали ;) 256'ю там дело и не пахнет...

Ответить

Номер ответа: 10
Автор ответа:
 HACKER


 

Разработчик Offline Client

Вопросов: 236
Ответов: 8362
 Профиль | | #10 Добавлено: 19.06.04 20:35
DaSharm я жписал что ASCII таблица неподходит. Ну спасибо всем!

Ответить

Номер ответа: 11
Автор ответа:
 DaSharm



ICQ: 780477 

Вопросов: 72
Ответов: 1297
 Web-сайт: dasharm.com
 Профиль | | #11
Добавлено: 19.06.04 23:36
теперь понял

Ответить

Номер ответа: 12
Автор ответа:
 HACKER


 

Разработчик Offline Client

Вопросов: 236
Ответов: 8362
 Профиль | | #12 Добавлено: 20.06.04 14:11
ок

Ответить

Страница: 1 |

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



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