gpt4 book ai didi

C#:将文本文件内容与字符串变量进行比较

转载 作者:行者123 更新时间:2023-11-30 13:33:33 24 4
gpt4 key购买 nike

我有一个将文本转储到文本文件的应用程序。我认为文本不包含正确的回车符可能存在问题,因此我正在编写一个测试,将此文件的内容与我在代码中声明的字符串变量进行比较。

例如:

1) 代码创建一个包含文本的文本文件:

This is line 1
This is line 2
This is line 3

2) 我有以下要比较的字符串:

string testString = "This is line 1\nThis is line 2\nThis is line3"

我知道我可以打开文件流阅读器并逐行读取文本文件并将其存储在可变字符串变量中,同时在每行后附加“\n”,但想知道这是否是在重新发明轮子(换句话说,.NET 有一个类似这样的内置类)。提前致谢。

最佳答案

您可以使用 StreamReader 的 ReadToEnd() 方法读取单个字符串中的内容,例如

    using System.IO;

using(StreamReader streamReader = new StreamReader(filePath))
{
string text = streamReader.ReadToEnd();
}

注意:您必须确保释放资源(上面的代码使用“using”来做到这一点)并且 ReadToEnd() 方法假定流知道它何时结束。对于服务器仅在您请求时才发送数据并且不关闭连接的交互式协议(protocol),ReadToEnd 可能会无限期阻塞,因为它没有到达终点,应该避免,您还应该注意字符串中的当前位置应该在开头。

你也可以像这样使用ReadAllText

    // Open the file to read from.
string readText = File.ReadAllText(path);

这很简单,它打开一个文件,读取所有行并负责关闭。

关于C#:将文本文件内容与字符串变量进行比较,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7251117/

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