C# 如何使用键值对从文件中获取字符串?

C# 如何使用键值对从文件中获取字符串?,c#,.net,C#,.net,我有一个文件,这里是文件的内容: # Web surround localized strings # English language # # Important: This file must be saved with UTF-8 encoding # # General # GeoMarker - temporary pin markup. SERVERERROR = Error!Please Contact admin. ERRORSTACKTRACE

我有一个文件,这里是文件的内容:

# Web surround localized strings
# English language
#
# Important: This file must be saved with UTF-8 encoding
#

# General

# GeoMarker - temporary pin markup.
SERVERERROR             = Error!Please Contact admin.
ERRORSTACKTRACE         = Stack Trace
int counter = 0;
string line;
System.IO.StreamReader file =
            new System.IO.StreamReader("s.txt");
while((line = file.ReadLine()) != null)
{
if(line.Contains("SERVERERROR") || line.Contains("ERRORSTACKTRACE") )
    Console.WriteLine (line);
    counter++;
}
    file.Close();
我需要根据密钥从上面的文件中获取消息。目前我在上面的文件中有
SERVERERROR
ERRORSTACKTRACE
密钥,我需要根据密钥获取massege

int counter = 0;
string line;
System.IO.StreamReader file =
            new System.IO.StreamReader("s.txt");
while((line = file.ReadLine()) != null)
{
if(line.Contains("SERVERERROR") || line.Contains("ERRORSTACKTRACE") )
    Console.WriteLine (line);
    counter++;
}
    file.Close();
如何在c#中实现它

int counter = 0;
string line;
System.IO.StreamReader file =
            new System.IO.StreamReader("s.txt");
while((line = file.ReadLine()) != null)
{
if(line.Contains("SERVERERROR") || line.Contains("ERRORSTACKTRACE") )
    Console.WriteLine (line);
    counter++;
}
    file.Close();
输出:

int counter = 0;
string line;
System.IO.StreamReader file =
            new System.IO.StreamReader("s.txt");
while((line = file.ReadLine()) != null)
{
if(line.Contains("SERVERERROR") || line.Contains("ERRORSTACKTRACE") )
    Console.WriteLine (line);
    counter++;
}
    file.Close();
服务器错误=错误!请联系管理员。 ERRORSTACKTRACE=堆栈跟踪

int counter = 0;
string line;
System.IO.StreamReader file =
            new System.IO.StreamReader("s.txt");
while((line = file.ReadLine()) != null)
{
if(line.Contains("SERVERERROR") || line.Contains("ERRORSTACKTRACE") )
    Console.WriteLine (line);
    counter++;
}
    file.Close();
此外,要获得准确的误差:

int counter = 0;
string line;
System.IO.StreamReader file =
            new System.IO.StreamReader("s.txt");
while((line = file.ReadLine()) != null)
{
if(line.Contains("SERVERERROR") || line.Contains("ERRORSTACKTRACE") )
    Console.WriteLine (line);
    counter++;
}
    file.Close();

int counter = 0;
string line;
System.IO.StreamReader file =
            new System.IO.StreamReader("s.txt");
while((line = file.ReadLine()) != null)
{
if(line.Contains("SERVERERROR") || line.Contains("ERRORSTACKTRACE") )
    Console.WriteLine (line);
    counter++;
}
    file.Close();
if(line.Contains(“SERVERERROR”)| line.Contains(“ERRORSTACKTRACE”))

int counter = 0;
string line;
System.IO.StreamReader file =
            new System.IO.StreamReader("s.txt");
while((line = file.ReadLine()) != null)
{
if(line.Contains("SERVERERROR") || line.Contains("ERRORSTACKTRACE") )
    Console.WriteLine (line);
    counter++;
}
    file.Close();
…以下工作:

int counter = 0;
string line;
System.IO.StreamReader file =
            new System.IO.StreamReader("s.txt");
while((line = file.ReadLine()) != null)
{
if(line.Contains("SERVERERROR") || line.Contains("ERRORSTACKTRACE") )
    Console.WriteLine (line);
    counter++;
}
    file.Close();
var str = "SERVERERROR             = Error!Please Contact admin."+
                "ERRORSTACKTRACE         = Stack Trace";

    var output = new Dictionary<string,string>();

    foreach(var item in str.Split('.').ToList()){
        var kv = item.Split('=');
        output.Add(kv[0].Trim(),kv[1].Trim());
    }

    Console.WriteLine(output["SERVERERROR"]);
    Console.WriteLine(output["ERRORSTACKTRACE"]);
var str=“SERVERERROR=Error!请与管理员联系。”+
“ERRORSTACKTRACE=堆栈跟踪”;
var输出=新字典();
foreach(str.Split('.').ToList()中的变量项){
var kv=项目拆分('=');
Add(kv[0].Trim(),kv[1].Trim());
}
Console.WriteLine(输出[“服务器错误]);
Console.WriteLine(输出[“ERRORSTACKTRACE”]);
检查这把小提琴:

你有2.3k的销售代表,所以你知道接下来会发生什么:到目前为止你做了哪些尝试,在哪里遇到了阻碍?关于在web上读取c#格式文件的例子不胜枚举,也很容易想到几种解析文本的方法。按
=
拆分,使用正则表达式。过滤掉以
#
开头的行。为什么这样一个
为我写代码的问题?@PanagiotisKanavos你能举个例子吗?什么例子?问题是什么?你有没有试过读文件的行?如果你有2.3K代表和18枚金徽章,你必须知道如何提出正确的问题。你必须知道,这是一个结构不好的问题。分隔符是换行符,而不是点。您的测试输入甚至没有换行符。从文件中读取不需要拆分行,您可以读取单独的行。我获取此值'SERVERERROR=Server Error',但我希望获取此密钥SERVERERROR的值(即错误!请与管理员联系。)尝试:Console.WriteLine(line.Split('=')[0]。ToString()+“”+line.Split('=')[1]。ToString();输出:服务器错误!请联系管理员。
int counter = 0;
string line;
System.IO.StreamReader file =
            new System.IO.StreamReader("s.txt");
while((line = file.ReadLine()) != null)
{
if(line.Contains("SERVERERROR") || line.Contains("ERRORSTACKTRACE") )
    Console.WriteLine (line);
    counter++;
}
    file.Close();