1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147
|
string path = "";
string var1, var2, var3, var4, var5;
private MySqlConnection Connection = new MySqlConnection();
private MySqlDataAdapter MyAdapter = new MySqlDataAdapter();
private void LecturePJ()
{
path = "C:\\Documents and Settings\\***\\Mes documents\\TempFiles\\Nouveaux.txt";
//donne le chemin et le nom du fichier au constructeur StreamReader
FileStream fs = new FileStream(path, FileMode.Open);
StreamReader sr = new StreamReader(fs, Encoding.UTF8);
string ligne;
//lit la première ligne du texte
ligne = sr.ReadLine();
if (ligne == "***")
{
//continue de lire jusqu'à la fin du fichier
while (ligne != null)
{
var1 = ""; var2 = ""; var3 = ""; var4 = ""; var5 = "";
//on passe à la ligne suivante
ligne = sr.ReadLine();
if (ligne == "***")
{
// Boucle de récupération par redondance des intervals de lignes
for (int compteur = 0; compteur < 52; ligne = sr.ReadLine(), compteur++)
switch (compteur)
{
case 1:
var1 = ligne;
break;
case 2:
var2 = ligne;
break;
case 3:
var5 = ligne;
break;
case 13:
var3 = ligne;
double.Parse(var3);
break;
case 51:
var4 = ligne;
break;
}
// Appel de la méthode Populate
PopulateDataGridView2();
}
}
}
else
{
Console.WriteLine("Le fichier suivant est invalide!\n" + path + "\n");
}
//ferme le fichier
sr.Close();
fs.Close();
}
private void PopulateDataGridView2()
{
// mise en tableau des 3 données
string[] row0 = { var1, var2, var3, var4, var5 };
//Paramètres de connexion
Connect();
//Définition des SQLParameters
MySqlParameter param*** = new MySqlParameter("@***", MySqlDbType.String, 50);
//On associe à la variable récupérée précédemment
param***.Value = row0[0];
MySqlParameter param*** = new MySqlParameter("@***", MySqlDbType.String, 100);
param***.Value = row0[1];
MySqlParameter param***= new MySqlParameter("@***", MySqlDbType.Double);
param***.Value = row0[2];
DateTime madate = DateTime.ParseExact(row0[3], "ddMMyy", null);
MySqlParameter param*** = new MySqlParameter("@***", MySqlDbType.Date);
param***.Value = madate;
MySqlParameter param*** = new MySqlParameter("@***", MySqlDbType.String, 40);
param***.Value = row0[4];
//On définit la requête SQL
...***...
MySqlCommand cmd = new MySqlCommand(sql1.ToString(), Connection);
//On ajoute les paramètres définis à la commande SQL
cmd.Parameters.Add(param***);
cmd.Parameters.Add(param***);
...***...
MySqlCommand cmd2 = new MySqlCommand(sql2.ToString(), Connection);
cmd2.Parameters.Add(param***);
cmd2.Parameters.Add(param***);
cmd2.Parameters.Add(param***);
...***...
MySqlCommand cmd3 = new MySqlCommand(sql3.ToString(), Connection);
//On ajoute les paramètres définis à la commande SQL
cmd3.Parameters.Add(param***);
cmd3.Parameters.Add(param***);
try
{
Connection.Open();
//Exécution requête
cmd.ExecuteNonQuery();
cmd3.ExecuteNonQuery();
//ExecuteSqlNQ(cmd);
Connection.Close();
}
catch
{
// Si la connexion a échoué, message d'erreur
Connection.Close();
}
try
{
Connection.Open();
//Exécution requête
cmd2.ExecuteNonQuery();
//ExecuteSqlNQ(cmd2);
Connection.Close();
}
catch
{
Console.WriteLine("Echec d'insertion de " + var2 + "\n" + "(Une duplication de produit est impossible!)\n");
Connection.Close();
}
} |
Partager