//参考
TStringList.Strings
TStringList.IndexOf
TStringList.SaveToFile
TStringList.LoadFromFile

解决方案 »

  1.   

    “文本文件可不可以一边读一边写?”-这是可以的。
    “在这一行,将原来的字符串替换为另一个和它不等长的字符串” -这是不可以的。只能写一样长的,要不一样长的话要做额外的工作。
    “二进制文件可以用BlockWrite(),BlockRead()边读边写” -可以。替换不一样长的数据关键在于把这段数据之后的数据移动到恰当的地方,建议把后面的数据读入一个缓冲区(随便是内存里还是另一个文件),然后改写数据之后,把后面数据跟在后面写入。
      

  2.   

    如果只是文本文件,用TString全部读入,改写后重新保存到文件即可。