哪些运算符和函数期望其字符串参数为八位字节?
某处是否存在包含所有 Perl 运算符和函数的列表,这些运算符和函数期望其字符串参数为八位字节?
例如,文件测试运算符需要八位字节(有关路径名编码的问题注释)。
现在我找到了一个带有 symlink
的代码,我不确定是否应该对文件名进行编码。
Does somewhere exist a list with all Perl operators and functions which expect their string arguments as octets?
For example the file test operators need octets ( Question about pathname encoding comment ).
Now I found a code with symlink
and I am not sure if I should encode the file names.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
这只是因为 Perl 使用或模拟的传统 Unix 系统调用都是按字节而不是字符定义的。如果您想要 UTF-8 编码或解码的文件名,那么您必须自己执行此操作。如果你不这样做,你就不会得到你想要的。
It’s simply because the traditional Unix syscalls that Perl either uses or emulates are all defined in terms of bytes, not characters. If you want a UTF-8 encoded or decoded filename, then you have to do that for yourself. You will not get what you want if you do not.