Création d'un Fichier CSV en C#
Je suis en train de créé un fichier csv, où chaque entrée est entrées par l'utilisateur. Une fois un ensemble de valeurs ont été saisies, il devrait passer à la suivante. Cependant, je n'arrive pas à le bit. Chaque fois que je lance le programme, il remplace les valeurs précédentes.
using System;
using System.IO;
using System.Collections.Generic;
namespace FileAccess
{
class MainClass
{
public static void Main(string[] args)
{
string FName;
string LName;
string Dpt;
string Grade;
string NumberOfHours;
string file_name = "EmployeeDetails.txt";
System.IO.StreamWriter objWriter;
objWriter = new System.IO.StreamWriter(file_name);
String[] ArrayDetails = new string[5];
Console.Write("Enter Emp First Name: ");
FName=Console.ReadLine();
Console.Write("Enter Emp Last Name: ");
LName = Console.ReadLine();
Console.Write("Enter Emp Department: ");
Dpt = Console.ReadLine();
Console.Write("Enter Employee Grade: ");
Grade = Console.ReadLine();
Console.Write("Enter Number Of Hours Worked: ");
NumberOfHours = Console.ReadLine();
ArrayDetails[0] = FName;
ArrayDetails[1] = LName;
ArrayDetails[2] = Dpt;
ArrayDetails[3] = Grade;
ArrayDetails[4] = NumberOfHours;
//Create new list of strings
List<string> LDetails = new List<string>(); //Create new list of strings
LDetails.Add(FName); //Add string 1
LDetails.Add(LName); //2
LDetails.Add(Dpt); //3
LDetails.Add(Grade); //4
LDetails.Add(NumberOfHours); //5
//OutPut the data into the file
string LDetailsCSV = string.Join(",", LDetails.ToArray());
Console.WriteLine(LDetailsCSV);
objWriter.Write(LDetailsCSV);
objWriter.Close();
}
}
}
Quelques conseils s'il vous plaît.
sachez que si l'un des champs que vous écrivez avoir des virgules, vous aurez besoin d'ajouter des guillemets autour du terrain (et puis s'échapper les guillemets dans le champ).
OriginalL'auteur Fazleh | 2011-04-15
Vous devez vous connecter pour publier un commentaire.
La StreamWriter constructeur va écraser le fichier que vous utilisez, si elle existe. Il y a un surcharge de constructeur à laquelle vous pouvez passer un booléen comme deuxième argument pour le dire d'ajouter:
En outre, la Écrire la méthode que vous utilisez ne sera pas ajouter un saut de ligne. Si vous utilisez le WriteLine méthode, il le sera.
Mis à jour pour montrer comment obtenir la nouvelle ligne.
OOoOhhhh merci beaucoup. U sont un joyau.
Si une réponse a résolu votre problème, vous devez marquer comme acceptée.
OriginalL'auteur sgriffinusa
Vous devez ouvrir le fichier en mode ajout, comme ceci:
OriginalL'auteur Evan
Dans votre cas, je pense que vous êtes mieux de faire quelque chose comme:
OriginalL'auteur manojlds