txt文件中保存内容为"012356789",我想在3和5中间插入字符"4",使文件内容变成"0123456789"。
我用fseek($fp,4)定位到3的位置,然后fwrite($fp,4)会把后面的5替换掉。因为文件很大,所以不可能全部重写3以后的字符。
有没有更好的方法完成插入操作呢?
我用fseek($fp,4)定位到3的位置,然后fwrite($fp,4)会把后面的5替换掉。因为文件很大,所以不可能全部重写3以后的字符。
有没有更好的方法完成插入操作呢?
fwrite($fp, $newContent);
换个问题,有没有人了解树的结构如何具体在文件中存储的?比如Btree,按照缩进来确立父子关系吗?
其实也是很方便的。$ch = '4';
$offs = 4;
$len = strlen($ch);$fp = fopen($filename, 'r+');
fseek($fp, $offs, SEEK_SET);
$buf = fread($fp, $len);
do {
fseek($fp, -$len, SEEK_CUR);
fwrite($fp, $ch);
$ch = $buf;
} while($buf = fread($fp, $len));
fwrite($fp, $ch);
fclose($fp);
你一行行的读,再替换呢。fseek($fp,3)或者你定位到3
fwrite($fp, '345');不知道可以不
你一行行的读,再替换呢。fseek($fp,3)或者你定位到3
fwrite($fp, '345');不知道可以不
[/Quote
这样会把"56"替换成"45"
谢谢老大