Из файла в масив

  • Автор темы kurzon
  • Дата начала
K

kurzon

#1
Как из файла занести в массив?
Файл
Код:
1 2 3 4 5 6 7 8 99 1
Как ввести в одномерный массив из файла?
Надо найти максимальный элемент(это я сам сделаю).
Читать через пробел.

Код:
		private void b_Open_Click(object sender, System.EventArgs e)
{


OpenFileDialog ofd = new OpenFileDialog();

ofd.Filter = "Any files *.*|*.*|Data files *.dat|*.dat";

if (ofd.ShowDialog() == DialogResult.OK)
{

LoadFile(ofd.FileName);

}


}
private void LoadFile(string p_sFileName)
{
string[] spl;
int Max = 0, j = 0, k = 0;
try
{

using (StreamReader streamReader = new System.IO.StreamReader(p_sFileName))
{
string line = streamReader.ReadToEnd();
while (line != null)
{
spl = line.Split(' ');
date.Text= line+"\r\n";

Masiv[j] = Convert.ToInt32(spl);
j++;
date.Text = string.Format("{0}\r\n", Masiv[j].ToString());

line = streamReader.ReadToEnd();

}
Max = Masiv[0];
for (k = 0; k < j;k++)
{
if(Masiv[k]>Max)
{
Max = Masiv[k];
}

}

t_Max.Text = Max.ToString();


}
m_sFileName = p_sFileName;
}

catch (Exception ex)
{
MessageBox.Show("Не может быть открытым");
}

}
 
P

Pasha

#2
<!--QuoteBegin-kurzon+22:11:2007, 21:16 -->
<span class="vbquote">(kurzon @ 22:11:2007, 21:16 )</span><!--QuoteEBegin-->Masiv[j] = Convert.ToInt32(spl);
j++;
[snapback]87018" rel="nofollow" target="_blank[/snapback]​
[/quote]
тут должен быть foreach по spl.
 
K

kurzon

#3
Типа так?
Код:
 string line = streamReader.ReadToEnd();
while (line != null)
{
spl = line.Split(' ');
// date.Text = line + "\r\n";
foreach (string Mas in spl)
{
Masiv[j] = Convert.ToInt32(Mas);
j++;
}
date.Text = string.Format("{0}\r\n", Masiv[j].ToString());

line = streamReader.ReadToEnd();

}

}
 
K

kurzon

#4
Программа работает, но с массивами нет.
 

Вложения

  • 31.1 КБ Просмотры: 29
6

62316e

#5
Код взят с Visual C# 2005 Code Snippets.
Код:
string filename = fileName;
string[] fields = null;
string[] delimiter = new string[] { " " };

using (Microsoft.VisualBasic.FileIO.TextFieldParser parser = new Microsoft.VisualBasic.FileIO.TextFieldParser(filename))
{
parser.Delimiters = delimiter;
while (!parser.EndOfData)
{
fields = parser.ReadFields();
}
}