Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/316.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在java中处理ascii不可打印字符_Java_Ascii - Fatal编程技术网

如何在java中处理ascii不可打印字符

如何在java中处理ascii不可打印字符,java,ascii,Java,Ascii,我们有人用Java发送字节数组中不可打印\x86类型的字符,当我们将其转换为ascii字符串时,它会在acsii文本中插入垃圾字符 在java中将数据从EBCDIC格式转换为ascii格式时,是否有字符串格式/其他方式来处理不可打印的ascii字符 提前感谢,, JJ您希望如何处理这些问题?将它们替换为可打印的内容(例如“?”)?完全移除它们?其他动作?如果你在美国或“西欧”(英国、法国、德国),角色集可能是。单字节字符集US-ASCII包含128个字符,单字节字符集Windwos-1252是一

我们有人用Java发送字节数组中不可打印\x86类型的字符,当我们将其转换为ascii字符串时,它会在acsii文本中插入垃圾字符

在java中将数据从EBCDIC格式转换为ascii格式时,是否有字符串格式/其他方式来处理不可打印的ascii字符

提前感谢,,
JJ

您希望如何处理这些问题?将它们替换为可打印的内容(例如“?”)?完全移除它们?其他动作?

如果你在美国或“西欧”(英国、法国、德国),角色集可能是。单字节字符集US-ASCII包含128个字符,单字节字符集Windwos-1252是一个超集,覆盖字节范围内的所有255个字符


最简单的是\u0080-\u00ff的翻译表。字符串,因为有些字符串最好用几个字符代替,比如说\u008c用“OE”。

Java中的字符串是UTF-16。如何将字节数组转换为字符串?您只是在做:
newstring(byteArray,“US-ASCII”)也许这会有帮助:如果它们真的是EBCDIC字节,Java支持:即IBM500/Cp500、x-IBM834/Cp834和IBM1047/Cp1047;您可以使用其中一个将EBCDIC字节转换为US-ASCII字符串,如@EmilH所建议。在解决方案中,您可以将EBCDIC字符转换为等效的Unicode字符,如中所示