为了账号安全,请及时绑定邮箱和手机立即绑定

字母不是一个字节吗?居然乱码了

字母不是一个字节吗?居然乱码了

错过了年华 2016-11-23 19:49:27
        $fn="../1.txt";    $handle1=fopen($fn,"r"); $content1=fgetc($handle1); echo $content1."<br>"; fclose($handle1); $handle2=fopen($fn,"r"); $content2=fgets($handle2); echo $content2."<br>"; fclose($handle2);读取的是“Hello”
查看完整描述

1 回答

已采纳
?
qq_青枣工作室_0

TA贡献446条经验 获得超754个赞

我知道原因了,你的txt文件是保存为UTF-8格式的。记事本会在前面加三个字节的BOM标记符(\xEF \xBB \xBF)。

你要用其它编辑器另存为UTF8-无BOM的格式,或者直接保存为ANSI(即GBK格式)。

如果硬要从原来格式读取出来的话,可以跳过前面3个字节:

$handle1=fopen($fn,"r");
fseek($handle1, 3);


查看完整回答
2 反对 回复 2016-11-24
  • 1 回答
  • 0 关注
  • 1668 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信