Comment exporter chaîne avec la virgule de la valeur dans le format csv?
Je l'exportation, le datagridview enregistrements dans un fichier csv à l'aide de code :
using (StreamWriter myFile = new StreamWriter(filename, false, Encoding.Default))
{
string sHeaders = "";
for (int j = 0; j < dGV.Columns.Count; j++)
{
if (dGV.Columns[j].Visible)
{
sHeaders = sHeaders.ToString() + dGV.Columns[j].HeaderText + ", ";
}
}
myFile.WriteLine(sHeaders);
//Export data.
for (int i = 0; i < dGV.RowCount; i++)
{
string stLine = "";
for (int j = 0; j < dGV.Rows[i].Cells.Count; j++)
{
if (dGV.Columns[j].Visible)
{
stLine = stLine.ToString() + dGV.Rows[i].Cells[j].Value.ToString() + ", ";
}
}
myFile.WriteLine(stLine);
}
}
}
Mais le problème est que si la valeur de la datagridviewcell est Harikrishna,Daxini alors elle ne sera pas exporté correctement,car il y a une virgule dans la valeur de la cellule, mais j'ai besoin d', y compris la virgule de la valeur.Et il devrait exporter correctement.Comment puis-je le faire ? J'ai essayé avec enfermer cette valeur par des guillemets doubles et les guillemets simples, mais il ne fonctionne pas.
Guillemets doit avoir travaillé. Avez-vous des espaces entre les séparant par des virgules et l'ouverture des guillemets?
Comme celui - ci "Harikrishna,Daxini" ?
Ce que je voulais dire est que vous taper vos valeurs comme
Je suis en train d'écrire comme "val1", "val2".
Version courte de ma réponse, je pense que les espaces sont à votre question. Les supprimer.
Comme celui - ci "Harikrishna,Daxini" ?
Ce que je voulais dire est que vous taper vos valeurs comme
"val1","val2"
ou "val1", "val2"
. Cela pourrait faire une différence avec CSV.Je suis en train d'écrire comme "val1", "val2".
Version courte de ma réponse, je pense que les espaces sont à votre question. Les supprimer.
OriginalL'auteur Harikrishna | 2011-03-21
Vous devez vous connecter pour publier un commentaire.
Les espaces entre les séparant des virgules et une ouverture double citation peut provoquer des problèmes avec CSV. Remplacer le code comme
"val1", "val2"
dans votre fichier csv avec"val1","val2"
. Cela devrait résoudre votre problème.OriginalL'auteur Belinda
Des valeurs qui contiennent un ',' doivent être échappés par les entourant avec des guillemets.
c'est la bonne façon d'exporter les valeurs par des virgules. Comment êtes-vous de lire ou de consommer le csv que vous produisez? Peut-être que le code qui est la lecture de votre fichier csv ne pas analyser correctement cité champs de données?
Désolé, mais cela ne fonctionne pas, pourquoi je suis la vérification, mais cela ne fonctionne pas.
Un seul problème est là, c'est qu'il ne doit pas d'espace avant la virgule et il va fonctionner.
OriginalL'auteur NerdFury