加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

delphi – 从二进制文件中删除char

发布时间:2020-12-15 09:09:03 所属栏目:大数据 来源:网络整理
导读:我想从二进制文件/文本文件中删除一个字符/字符串.如果我从文件中知道char / string的位置,我该如何删除它?我应该读取文件(BlockRead),删除char / string(使用Delete(source,startPos,endPos)然后将(BlockWrite)写入新文件,或者我可以直接从指定文件中删除
我想从二进制文件/文本文件中删除一个字符/字符串.如果我从文件中知道char / string的位置,我该如何删除它?我应该读取文件(BlockRead),删除char / string(使用Delete(source,startPos,endPos)然后将(BlockWrite)写入新文件,或者我可以直接从指定文件中删除?

谢谢

解决方法

您可以使用TFileStream.CopyFrom方法复制到不需要的字符串之前,先搜索它,然后再复制CopyFrom文件的其余部分. TFileStreams非常快.

像这样的东西(未经测试)

aInFile := TFileStream.Create(sInput,fmOpenRead);
try
  aOutFile := TFileStream.Create(sOutput,fmCreate);
  try
    aOutFile.CopyFrom(aInFile,Pos);
    aInFile.Seek(Skip);
    aOutFile.CopyFrom(aInFile,aInfile.Size - Pos - Skip);
  finally
    aOutFile.Free;
  end;
finally
  aInFile.Free;
end;

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读