零宽字符的目的就是为了让人看不到啊,比如我批量获取了一大批文件,然后手动调整了某个文件中的单个元数据,为了防止动作覆写该元数据,在文件名 ”]” 后面插入3个零宽空格,表示 “锁定元数据C”。我看不看得到不重要,重要的是动作别把我手动修改的元数据又给改回了批量获取值。你可以理解为这是自定义的 "属性"(锁定元数据C)。
而且我的重点是:IDE不应在未告知用户、未经用户授权下的情况下静默修改输入内容,尤其是这个修改导致的错误打印出来是看不出异常的。
你完全可以标记出该输入值包含不可见字符。但不能为了可能存在的输入错误,惩罚使用合法字符构建文件名的用户。就像我在用 "如果" 的时候,写了个 “或” 判定,结果 || 后边什么都没有,编辑器只会用红色下波浪线提示我,而不会把我 || 给删了一样。