gpt4 book ai didi

php - 在 PHP 中拆分文本文件

转载 作者:行者123 更新时间:2023-12-02 06:25:11 28 4
gpt4 key购买 nike

如何使用 PHP 按字符数将大文本文件拆分为单独的文件?因此,每 1000 个字符拆分的 10,000 个字 rune 件将拆分为 10 个文件。此外,我只能在找到句号后才能拆分吗?

谢谢。

更新 1:我喜欢 zombats 代码,我删除了一些错误并提出了以下内容,但有没有人知道如何只在句号后拆分?

$i = 1;
$fp = fopen("test.txt", "r");
while(! feof($fp)) {
$contents = fread($fp,1000);
file_put_contents('new_file_'.$i.'.txt', $contents);
$i++;
}

更新 2:
我接受了僵尸的建议并将代码修改为下面的代码,它似乎有效-
$i = 1;
$fp = fopen("test.txt", "r");
while(! feof($fp)) {
$contents = fread($fp,20000);
$contents .= stream_get_line($fp,1000,".");
$contents .=".";

file_put_contents("Split/".$tname."/"."new_file_".$i.".txt", $contents);
$i++;
}

最佳答案

您应该能够使用基本的 fread() 轻松完成此操作。 .您可以指定要读取的字节数,因此读取确切数量并将其输出到新文件很简单。

尝试这样的事情:

$i = 1;
$fp = fopen("test.txt",'r');
while(! feof($fp)) {
$contents = fread($fp,1000);
file_put_contents('new_file_'.$i.'.txt',$contents);
$i++;
}

编辑

如果您想在一定长度后停止 在某个字符上,则可以使用 stream_get_line()而不是 fread() .它几乎相同,只是它允许您指定任何您希望的结束分隔符。请注意,它不会将分隔符作为读取的一部分返回。
$contents = stream_get_line($fp,1000,".");

关于php - 在 PHP 中拆分文本文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2044262/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com