我正在尝试阅读下载的html文件
my $file = "sn.html";
my $in_fh = open $file, :r;
my $text = $in_fh.slurp;
Run Code Online (Sandbox Code Playgroud)
我收到以下错误消息:
Malformed UTF-8
in block <unit> at prog.p6 line 10
Run Code Online (Sandbox Code Playgroud)
如何避免这种情况并访问文件的内容?
Eli*_*sen 11
如果在打开文件时未指定编码,则会假设utf8.显然,您要打开的文件包含无法解释为UTF-8的字节.因此错误消息.
根据您要对文件内容执行的操作,您可以设置:bin命名参数,以便以二进制模式打开文件.或者您可以使用特殊utf8-c8编码,它将采用UTF-8直到遇到无法编码的字节:在这种情况下,它将生成临时代码点.
有关更多信息,请参阅https://docs.perl6.org/language/unicode#UTF8-C8.