Le fichier im essayant de lire est à la recherche comme ceci:Importation d'un fichier avec « » comme séparateur
123,123,123h123m, 123123123
Et je code suivant pour essayer de lire que:
public DataTable DataTableFromTextFile(string location, char delimiter = ',')
{
DataTable result;
string[] LineArray = File.ReadAllLines(path);
result = FormDataTable(LineArray, delimiter);
return result;
}
private static DataTable FormDataTable(string[] LineArray, char delimiter)
{
DataTable dt = new DataTable();
AddColumnToTable(LineArray, delimiter, ref dt);
AddRowToTable(LineArray, delimiter, ref dt);
return dt;
}
private static void AddRowToTable(string[] valueCollection, char delimiter, ref DataTable dt)
{
for (int i = 1; i < valueCollection.Length; i++)
{
string[] values = valueCollection[i].Split(delimiter);
DataRow dr = dt.NewRow();
for (int j = 0; j < values.Length; j++)
{
dr[j] = values[j];
}
dt.Rows.Add(dr);
}
}
private static void AddColumnToTable(string[] columnCollection, char delimiter, ref DataTable dt)
{
string[] columns = columnCollection[0].Split(delimiter);
foreach (string columnName in columns)
{
DataColumn dc = new DataColumn(columnName, typeof(string));
}
}
mais cela ne semble pas encore fonctionner. J'ai essayé de changer certaines choses mais il est ensuite allé ajouter des espaces vides dans le DataGridView (qui s'appelle infoTabelle). Quelqu'un peut-il m'aider à résoudre mon problème?
**** EDIT Tout a été résolu maintenant. J'ai changé la méthode où il était de mettre mon texte séparé dans le DataGridView. Travailler comme un charme maintenant **
Quelles erreurs obtenez-vous? "ne semble pas fonctionner" ne vous mènera nulle part ici sur SO. Et bienvenue au fait! Je recommande de prendre le [tour] et lire [demander]. – Fildor
BTW: 'réf DataTable dt' - pourquoi pensez-vous que le' ref' est nécessaire ici? – Fildor
Ajoutez des tests unitaires à votre code pour vous assurer que chaque méthode fonctionne comme prévu. Tester le fractionnement et vérifier le DataTable séparément. Avez-vous même un DataTable valide? –