admin管理员组

文章数量:1355748

Need to convert the unicode of the SOH value '\u0001' to Ascii. Why is this not working?

var soh = String.fromCharCode(01);
It returns '\u0001'
Or when I try

var soh = '\u0001' It returns a smiley face.
How can I get the unicode to bee the proper SOH value(a blank unprintable character)

Need to convert the unicode of the SOH value '\u0001' to Ascii. Why is this not working?

var soh = String.fromCharCode(01);
It returns '\u0001'
Or when I try

var soh = '\u0001' It returns a smiley face.
How can I get the unicode to bee the proper SOH value(a blank unprintable character)

Share Improve this question asked Jul 25, 2016 at 21:10 Newbie_TechieNewbie_Techie 451 gold badge2 silver badges9 bronze badges
Add a ment  | 

2 Answers 2

Reset to default 5

JS has no ASCII strings, they're intrinsically UTF-16.

In a browser you're out of luck. If you're coding for node.js you're lucky!

You can use a buffer to transcode strings into octets and then manipulate the binary data at will. But you won't get necessarily a valid string back out of the buffer once you've messed with it.

Either way you'll have to read more about it here:

https://mathiasbynens.be/notes/javascript-encoding

or here:

https://nodejs/api/buffer.html


EDIT: in the ment you say you use node.js, so this is an excerpt from the second link above.

const buf5 = Buffer.from('test');
// Creates a Buffer containing ASCII bytes [74, 65, 73, 74].

To create the SOH character embedded in a mon ASCII string use the mon escape sequence\x01 like so:

const bufferWithSOH = Buffer.from("string with \x01 SOH", "ascii");

This should do it. You can then send the bufferWithSOH content to an output stream such as a network, console or file stream.

Node.js documentation will guide you on how to use strings in a Buffer pretty well, just look up the second link above.

To ascii would be would be an array of bytes: 0x00 0x01 You would need to extract the unicode code point after the \u and call parseInt, then extract the bytes from the Number. JavaScript might not be the best language for this.

本文标签: nodejsJavascript unicode to ASCIIStack Overflow