最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
php 截取GBK文档某个位置开始的n个字符方法
时间:2022-06-24 14:47:22 编辑:袖梨 来源:一聚教程网
cut.php:
| 代码如下 | 复制代码 |
#!/usr/bin/php define('INPUT_FILE','t.txt'); define('OUTPUT_FILE','a.txt'); $pos= max(intval($argv[1]), 0); $len= max(intval($argv[2]), 0); $file_size=filesize(INPUT_FILE); if($pos>=$file_size)exit; $fp=fopen(INPUT_FILE,'rb'); $point= 0;//current byte position $string='' while(ftell($fp) <$file_size) { if($point>=$pos+$len)break;$byte=fread($fp, 1); //php version >= 5.4 $char= unpack('C',$byte)[1]; if($char<= 0x7f) { //single byte if($point>=$pos)$string.=$byte; $point+= 1; continue; }else{ //double bytes if($point>=$pos) { $string.=$byte.fread($fp, 1); }else{ fseek($fp, 1, SEEK_CUR); } $point+= 1; continue; } } fclose($fp); file_put_contents(OUTPUT_FILE,$string); ?> | |
源文件t.txt内容:
dkei20王nnso
测试命令:
./cut.php 6 1
查看结果:
hexdump -C t.txt && hexdump -C a.txt
相关文章
- 免费漫画阅读软件有哪些-免费好用的漫画阅读软件推荐 02-22
- 速卖通卖家登录-速卖通卖家官网 02-22
- win8.1密钥永久激活-win8.1激活密钥全收录2026 02-22
- teams网页版会议快速入口-teams网页版一键登录入口 02-22
- 免费漫画阅读站旧版入口-免费漫画在线观看全攻略 02-22
- 微信模拟器免费版3.0下载最新版本-微信聊天模拟器手机版app下载安装入口 02-22