根据Datamax文档:
<CR> is used to identify the line termination character. Other strings placed
between < > in this manual represent the character of the same ASCII name, and
are single-byte hexadecimal values (e.g., <STX>, <CR>, and <0x0D> equal 02, 0D,
and 0D, respectively).
我正在尝试编写代码&lt; CR&GT;在Printer OutputStream中,但我不知道如何?我尝试了以下代码:
outputStream.write("<CR>");
但它没有奏效。如何在输出流中编写ASCII和十六进制?
答案 0 :(得分:3)
请参阅ASCII表:http://www.asciitable.com/
<CR>
为十六进制D
,十进制13
,八进制015
。
在Java字符串文字中,可以通过3种方式对其进行转义:
\r
Carriage Return \u000d
Unicode Escape \015
Octal Escape 再次查看该ASCII表,您还可以看到<STX>
是十六进制2
,十进制2
,八进制2
,其中Java是{{1} }或\002
。没有\u0002
的字母版本,例如<STX>
的{{1}}。
注意:八进制表格可以用一个,两个或三个数字的变体写成,例如: \r
,<CR>
,\2
,但最好使用3位数版本。实际上,JLS说:
提供八进制转义以与C兼容,但只能表达
\02
到\002
的Unicode值,因此通常首选Unicode转义。
答案 1 :(得分:1)
此处,<CR>
表示“回车”,即"\r"
。但是,如果您有一个OutputStream
,并且想要为其编写文本,我建议将其包装在OutputStreamWriter
中,并指定适当的编码。然后,您可以适当地使用面向文本的调用。
对于其他值,您可以使用\uxxxx
,例如STX \u0002
。