谁能告诉我Unicode可打印字符的范围是多少?[例如,Ascii可打印字符范围是\ u0020-\ u007f]
参见http://en.wikipedia.org/wiki/Unicode_control_characters
你可能希望特别关注C0和C1控制字符http://en.wikipedia.org/wiki/C0_and_C1_control_codes
Wiki说,C0控制字符的范围是U + 0000-U + 001F和U + 007F(与ASCII相同的范围),而C1控制字符的范围是U + 0080-U + 009F
除了C控件字符外,Unicode还具有数百种格式设置控制字符,例如零宽度非连接符(使字符间距更小)或双向文本控件。这种格式控制字符相当分散。
更重要的是,你在做什么需要知道Unicode的不可打印字符?很可能,无论你尝试做的是解决问题的错误方法。
我想创建一个随机的unicode字符串生成器,它将生成可打印的字符。
可以由谁打印?您是否要包含例如。所有的汉字?许多用户将没有字体,因此“打印”它们将不会给您任何内容,空白框或其他无用的替换字符。
一个很好的理由是避免安全漏洞利用:bugzilla.mozilla.org/show_bug.cgi?id=968576
@bobince我的浏览器可以显示中文字符。不确定2010年是否如此。
“您正在做什么,这需要您知道Unicode的不可打印字符?” 用户将Windows计算器中的数字粘贴到文本框中(例如
165063688192
)。但实际上,该字符串将是:U+202D
165063688192
U+202C
。因此,该字符串将无法解析,并且没有人能够弄清楚原因。因此,由于没有人想要的功能:我们现在需要编写该TrimStrimToPrintable(String s)
功能。