{ StreamReader sr = new StreamReader(@"C:\points.txt"); //ArrayList points = new ArrayList(); //PointConverter pc = new PointConverter(); string line; int index = 0; chart1.Series.Add("serie" + index); while (!sr.EndOfStream) { line = sr.ReadLine(); chart1.Series[chart1.Series.Count - 1].Points.AddXY(double.Parse(line.Split(';')[0]), double.Parse(line.Split(';')[1])); } chart1.Series[chart1.Series.Count - 1].ChartType = SeriesChartType.FastLine; chart1.Series[chart1.Series.Count - 1].Color = Color.Red; sr.Close(); }
mais pour le "}", je l'ai juste oublié en recopiant
using System.Collections.Generic; using System.IO; using System.Linq; namespace WindowsFormsApplication1 { public class DonneesNavas { public DonneesNavas(string FileName) { Points = (from ligne in File.ReadAllLines(FileName) let valeurs = ligne.Split(';') select new Coordonnees { X = double.Parse(valeurs[0]), Y = double.Parse(valeurs[1]) }).ToList(); } public List<Coordonnees> Points { get; set; } public double MaxX { get { return Points.Max(p => p.X); } } } public class Coordonnees { public double X { get; set; } public double Y { get; set; } } }
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre questionusing System.Collections.Generic; using System.IO; using System; using System.Text.RegularExpressions; namespace WindowsFormsApplication1 { public class DonneesNavas { public DonneesNavas(string FileName) { Regex maRegex = new Regex(@"Time:(?<heure>(\d{2}/){2}\d{4} (\d{2}:){2}\d{2}) \r\nData:(?<donnee>\d+) ");//Regex qui reprend le format des 2 lignes de données et donne un mon aux parties de texte qui nous importent MatchCollection matches = maRegex.Matches(File.ReadAllText(FileName)); Points = new List<Coordonnees>(); for (int i = 0; i < matches.Count; i++)//la requete Linq ne marche pas avec matchcollection, donc je fais un for Points.Add(new Coordonnees { Data = int.Parse(matches[i].Groups["donnee"].Value), Heure = DateTime.Parse(matches[i].Groups["heure"].Value) }); } public List<Coordonnees> Points { get; set; } } public class Coordonnees { public int Data { get; set; } public DateTime Heure { get; set; } public override string ToString() { return string.Format("{0}: {1}", Heure.ToShortTimeString(), Data); } } }
Erreur 1 'WindowsFormsApplication1.Form1' ne contient pas un constructeur qui accepte des arguments 0
namespace WindowsFormsApplication1 { public partial class Form1 : Form { public Form1( string FileName) { InitializeComponent(); Regex maRegex = new Regex(@"Time:(?<heure>(\d{2}/){2}\d{4} (\d{2}:){2}\d{2}) \r\nData:(?<donnee>\d+) ");//Regex qui reprend le format des 2 lignes de données et donne un mon aux parties de texte qui nous importent MatchCollection matches = maRegex.Matches(File.ReadAllText(FileName)); Points = new List<Coordonnees>(); for (int i = 0; i < matches.Count; i++)//la requete Linq ne marche pas avec matchcollection, donc je fais un for Points.Add(new Coordonnees { Data = int.Parse(matches[i].Groups["donnee"].Value), Heure = DateTime.Parse(matches[i].Groups["heure"].Value) }); } public List<Coordonnees> Points { get; set; } private void Form1_Load(object sender, EventArgs e) { } } public class Coordonnees { public int Data { get; set; } public DateTime Heure { get; set; } public override string ToString() { return string.Format("{0}: {1}", Heure.ToShortTimeString(), Data); } } }