我必须更改 asp.net 中文本文件的特定行。我可以只更改/替换特定行中的文本吗?我在文本文件中使用了替换功能,但它正在替换整个文件中的文本。我只想替换我指定的一行。
等待回复。。
提前致谢..
除了直接逐字节覆盖之外,文件系统通常不允许您在文件中进行编辑。如果您的文本文件对每一行使用相同数量的字节,那么您可以非常有效地替换一行文本 - 但如今这种情况相对罕见。
您更有可能需要采用以下选项之一:
File.ReadAllLines
,更改相关行,然后使用 再次将其写出File.WriteAllLines
。这在内存方面效率低下,但编码非常简单。如果您的文件很小,这是一个不错的选择。第二个选项还有另一个好处 - 您可以随机播放文件(使用大量重命名步骤),因此除非已知输出文件完整且位于正确的位置,否则您永远不会丢失输入文件. 但这更复杂。