Home Page
Articoli
Tips & Tricks
News
Forum
Archivio Forum
Blogs
Sondaggi
Rss
Video
Utenti
Chi Siamo
Contattaci
Username:
Password:
Login
Registrati ora!
Recupera Password
Home Page
Stanze Forum
App. WinForms / WPF .NET
Ricopiare dati su un foglio excell,VisualStudio2005, c#
lunedì 24 novembre 2008 - 12.48
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
LUNA
Profilo
| Junior Member
53
messaggi | Data Invio:
lun 24 nov 2008 - 12:48
Salve a tutti!!!
Sto cercando di salvare in formato CSV, una matrice presente in un dataGridView.
private void SaveGridDataInFile(string fName)
{
int I = 0;
int j = 0;
int N = DistClienti.Rows.Count - 2;
int M = DistClienti.Columns.Count - 1;
object cellvalue;
string rowLine = "";
StreamWriter objWriter = new StreamWriter(fName, true);
while (j <= M)
{
// rowLine = "";
while (I <= N)
{
cellvalue = DistClienti.Rows[I].Cells[j].Value;
rowLine = (cellvalue + ",");
I++;
}
MessageBox.Show(rowLine.ToString());
objWriter.WriteLine(rowLine);
j++;
I = 0;
}
objWriter.Close();
MessageBox.Show("Text written to file");
}
Inserendo però questo metodo, riesco a scrivere solo una colonna del mio foglio,quindi alla fine ottengo solo l'utima colonna della mia matrice nel mio foglio excell...
Qualcuno mi sa dire cosa sbaglio?e come fare ad andare avanti con le colonne nella scrittura?
Grazie mille!!!
Cteniza
Profilo
| Guru
1.509
messaggi | Data Invio:
lun 24 nov 2008 - 15:05
una cosa del genere (bada che l'ho scritta qui)
foreach (DataGridViewRow dvr In myDataGridView.Rows)
{
StringBuilder sb = new StringBuilder();
foreach (object cella In dvr.Cells)
{
sb.Append(cella);
sb.Append("\t");
}
myStream.WriteLine(sb.ToString());
}
LUNA
Profilo
| Junior Member
53
messaggi | Data Invio:
lun 24 nov 2008 - 15:44
Grazie mille!!Finalmente va avanti con le colonne!!Il problema è che al posto di inserirmi i numeri che fanno parte della matrice del mio dataGrid, mi inserisce il valore "DataGridViewTextBoxCell { ColumnIndex=12, RowIndex=10 }..........per ogni cella della mia pagina excell....
Come posso fare per farli leggere il valore???
Grazie ancora!!
Cteniza
Profilo
| Guru
1.509
messaggi | Data Invio:
lun 24 nov 2008 - 16:56
void Esporta(string NomeFile)
{
if (NomeFile == "")
NomeFile = "esporta.txt";
using (System.IO.StreamWriter sw = new System.IO.StreamWriter(NomeFile))
{
bool primo = true;
foreach (DataGridViewRow dvr in this.DataGridView1.Rows)
{
StringBuilder sb = new StringBuilder();
if (primo)
{
for (int i = 0; i < dvr.Cells.Count; i++)
{
sb.Append(DataGridView1.Columns[i].Name);
sb.Append("\t");
}
primo = false;
sb.Append(Environment.NewLine);
}
for (int i = 0; i < dvr.Cells.Count; i++ )
{
sb.Append(dvr.Cells[i].Value);
sb.Append("\t");
}
sw.WriteLine(sb.ToString());
}
sw.Close();
}
}
LUNA
Profilo
| Junior Member
53
messaggi | Data Invio:
lun 24 nov 2008 - 17:31
ti ringrazio tanto per la risposta e l'aiuto!!!!
Torna su
Stanze Forum
Elenco Threads
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?
Dopo esserti registrato potrai chiedere
aiuto sul nostro
Forum
oppure aiutare gli altri
Consulta le
Stanze
disponibili.
Registrati ora !