sir,i want to convert string into a hexadecimal value...is there any direct command?

조회 수: 27 (최근 30일)
sir,i want to convert string into a hexadecimal value...is there any direct command?suppose my string is abc.i want that abc in the hexadecimal value.plz help me sir
  댓글 수: 6
Patrik Ek
Patrik Ek 2014년 4월 2일
You have it already. Just notice that concate is a variable and must be treated as such and not as 'concate' which is a string with value 'concate' and not the variable concate. also remove the 8 in dec2str the input is given as an array of hexadecimal strings, which only is 2 digit each.
However, walter roberson give a nice code that can replace
decString = unicode2native('hi','utf-8');
hexString = dec2hex(decString);
If you want the hexadecimal code as a row vector, instead of a 2xN columnvector. Your choice. Both have pros and cons.
satya
satya 2014년 4월 8일
siy,By using 'uint8' command...i got my answer...this will convert the string into integer value..we can convert the decimal value to hex by using dec2hex command...
decstring=uint8(concate)
hexstring = dec2hex(decstring)
check this code....thanku for ur reply..

댓글을 달려면 로그인하십시오.

채택된 답변

Patrik Ek
Patrik Ek 2014년 3월 21일
편집: Patrik Ek 2014년 3월 21일
Have you tried unicode2native ?
decString = unicode2native('hi','utf-8');
hexString = dec2hex(decString);
You can really select another encoding if you would like and the hexString vector may need to be modified a bit. Otherwise this should work fine. Please comment if this does not solve your problem. If you want the return vector in some special way, then add the wanted output to the question.
Good luck!

추가 답변 (3개)

Walter Roberson
Walter Roberson 2014년 4월 1일
hexstring = sprintf('%02x', YourString')
Note that if characters beyond 255 are present then you need to take other steps such as using UTF-8 encoding as Patrik suggested.

Mischa Kim
Mischa Kim 2014년 3월 20일
편집: Mischa Kim 2014년 3월 20일
Satya, hex values are interpreted as strings, so no need for a transformation. E.g.
a = hex2dec('abc') % converting hex number to decimal
a =
2748
or
a = hex2dec('f')
a =
15
  댓글 수: 4
satya
satya 2014년 3월 21일
sir,Actually i am designing a SHA-512 hash algorithm.according to my application the user have to give input i.e..,some string or value..and that string must be converted to HEX value for further computations.As i am new to matlab...i am not aware of basics...
Mischa Kim
Mischa Kim 2014년 3월 21일
OK. There is only limited built-in functionality to deal with hex numbers. So typically, you would read and store hexadecimals as strings. For any kind of hex manipulations you'd have to convert to a different number format (decimals, most likely). You might find some useful code in the File Exchange .

댓글을 달려면 로그인하십시오.


Jos (10584)
Jos (10584) 2014년 3월 21일
Do you want to convert the string to a value?
STR = input('Enter a hexadecimal number:','s')
% the user types, for instance, 1F
value = hex2dec(STR)
% or
value2 = sscanf('1F','%x')
% both gives 31
  댓글 수: 2
satya
satya 2014년 3월 21일
sir,For the code u have given,user have to give their input in hexadecimal value,but my input is string.that may be a name of a person..
Jos (10584)
Jos (10584) 2014년 3월 21일
You really lost me … Can you provide a flow-diagram for your problem?

댓글을 달려면 로그인하십시오.

카테고리

Help CenterFile Exchange에서 Data Type Conversion에 대해 자세히 알아보기

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by