19/07/12 19:07
sps84
Ciao a tutti! Sto imparando a creare delle classi, e mi sono imbattuto in questo problema:
Ho un file .csv con questi dati:
Ho un form con il seguente codice:
Il tutto funzion senza problemi ma immagino che questa parte non sia molto carina:
Questa mi serve nel caso la stringa sia vuota, come posso integrarla nella classe?
Ho un file .csv con questi dati:
prova asdf;1;2;34,4 prova wers;2;3;34,4 prova erew;32;1;2,2 prova q432;;;23,2
Ho un form con il seguente codice:
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; using System.Linq; using System.IO; namespace LinqToCsv { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void Form1_Load(object sender, EventArgs e) { string[] csvlines = System.IO.File.ReadAllLines("FileData.csv"); var query = from art in csvlines let row = art.Split(';') select new Articolo { Descrizione = row[0].ToString(), Qta = StringToInt(row[1].ToString()), Numero = StringToInt(row[2].ToString()), Prezzo = StringToDecimal(row[3].ToString()) }; dataGridView1.DataSource = query.ToList(); } private int StringToInt(string val) { int result; bool success; success = Int32.TryParse(val, out result); return result; } private decimal StringToDecimal(string val) { decimal result; bool succes; succes = decimal.TryParse(val, out result); return result; } } public class Articolo { public string Descrizione { get; set; } private int _qta = 0; public int Qta { get { return _qta; } set { _qta = value; } } private int _numero = 0; public int Numero { get { return _numero; } set { _numero = value; } } private decimal _prezzo = 0.000m; public decimal Prezzo { get { return _prezzo; } set { _prezzo = value; } } } }
Il tutto funzion senza problemi ma immagino che questa parte non sia molto carina:
private int StringToInt(string val) { int result; bool success; success = Int32.TryParse(val, out result); return result; } private decimal StringToDecimal(string val) { decimal result; bool succes; succes = decimal.TryParse(val, out result); return result; }
Questa mi serve nel caso la stringa sia vuota, come posso integrarla nella classe?
Ultima modifica effettuata da sps84 19/07/12 19:08
aaa