Я не могу поверить, самая простая задача не сработает!
Я просто хочу пройтись по CSV-файлу с помощью StreamReader-Class и найти ключ в ассоциативной строке.Например:
- ключ1; значение1
- ключ2; значение2
- ключ3; значение3
Если ключ существует, проблем нет.В противном случае EOF должен быть достигнут, но он не работает!
Если я отбрасываю буферизованные данные, EOF будет достигаться каждый раз.В результате ключ не будет найден.
Редактировать: со всеми предложениями, но результат тот же!
StreamReader reader = null;
if(!string.IsNullOrEmpty(textBox1.Text))
{
try
{
reader = new StreamReader(@"ident.csv", Encoding.ASCII);
string buffer;
string[] str = null;
while((buffer = reader.ReadLine()) != null)
{
if(buffer.Contains(";"))
{
str = buffer.Split(';');
if(str[0].Equals(textBox1.Text))
break;
}
}
if(reader == null)
{
MessageBox.Show("Ident not found!");
textBox2.Text = "";
}
else
{
textBox2.Text = str[1];
Clipboard.SetText(str[1]);
}
}
catch(Exception ex)
{
MessageBox.Show(ex.Message);
}
finally
{
reader.Dispose();
reader.Close();
}
}
else
{
MessageBox.Show("Set ident!");
}
}