Le programme s'exécute en douceur et je peux voir les valeurs du vecteur dans l'éditeur, mais je ne vois pas les valeurs dans le fichier texteJe ne peux pas écrire les données de la table de vecteurs dans le fichier texte, mais le programme fonctionne sans problème
FileManagement FileManagement = new FileManagement();
String sti = "D:\\El teknik/Data.txt";
/*En Vector er en liste af andre objekter, men den kan betragtes som en tabel
ligesom et array. Fordelen ved en Vector er, at ikke angives en bestemt længde
i tabellen*/
Vector dataTabel = new Vector();
// konstruktør til at initialisere objektet
Ces 3 lignes sont les valeurs que je veux dans le fichier texte
Data dataoplysning1 = new Data("Hjemmeside","brugernavn","password");
/*Jeg kalder min vektor personTabel og gemmer oplysninger i vector´en og vector
Vector klassen har en metode add(objekt), der tilføjer et objekt sidst i vektoren
*/ dataTabel.add(dataoplysning1);/*dette er et menupunkt, som opretter et objekt
og gemmer i vector´en*/
Data dataoplysning2 = new Data("Facebook.com", "Bjarne Olsen", "The1bad32feel");
dataTabel.add(dataoplysning2);
Data dataoplysning3= new Data("Twitter", "Herman Jessen","Degode3fort3l");
dataTabel.add(dataoplysning3);
i appeler la méthode statique en bas
//jeg kalder den static-metode save(Vector v, String sti)
FileManagement.save(dataTabel,sti);
//det kan være et nyt menupunkt, som gemmer vector´en på harddisken
Vector nyDataTabel = new Vector();
nyDataTabel=FileManagement.load(nyDataTabel,sti);
/* Henter tabellen på harddisken, som ikke bør være et menupunkt, men filen hentes
på harddisken, når programmet starter*/
for (int idx=0;idx<nyDataTabel.size();idx++)
{
dataoplysning1=(Data)nyDataTabel.elementAt(idx);
System.out.println("Hjemmeside. :"+dataoplysning1.getHjemmeside());
System.out.println("Brugernavn. :"+dataoplysning1.getusername());
System.out.println("Password. :"+dataoplysning1.getpassword());
System.out.println("---------------------------------------");
}
//Et menupunkt som udskriver hele vector´en
for (int idx=0;idx<nyDataTabel.size();idx++)
{
dataoplysning2 = (Data)nyDataTabel.elementAt(idx);
String Hjemmeside = dataoplysning2.getHjemmeside();
if (Hjemmeside.compareTo("Facebook.com")==0)
{
System.out.println("Find følgende brugernavn og password");
System.out.println("Hjemmeside. :"+dataoplysning2.getHjemmeside());
System.out.println("Brugernavn. :"+dataoplysning2.getusername());
System.out.println("Password. :"+dataoplysning2.getpassword());
idx=nyDataTabel.size();
}/*Det er et menupunkt, der søger efter brugeroplysninger på en bestem
hjemmeside i vector´en*/
else {
System.out.println("Dataerne passer ikke med hinanden");
}
}
// AES_encryption.user();//kalder metoden
AES_encryption.skriv(sti, x);
}
La méthode ci-dessous est l'endroit où il écrit les valeurs de vecteur vers le fichier texte, qui est où le problème est
public static void skriv(String fileName, Vector dataTabel) throws IOException
{
BufferedWriter outputWriter=null;
outputWriter = new BufferedWriter(new FileWriter(fileName));
for (int i = 0;i <dataTabel.size();i++)
{
//skriver enten
outputWriter.write(dataTabel.get(i) + "");
// eller
outputWriter.write(Integer.toString((int) dataTabel.get(i)));//her gemmer den arrayet til tekststrengen
outputWriter.newLine();//den går videre til en ny linje
}
outputWriter.flush(); //gemmer arrayet til tekstrengen filnavn
outputWriter.close();//afslutter gemning af fil og metoden
}
Eh bien, j'ai trouvé la solution plus tard, c'était presque comme vous l'avez dit à cause de la sérialisation des objets, que j'ai oublié d'ajouter, puis j'ai supprimé l'autre méthode contenant BufferedReader. –
Cela semble bon pour vous! – fcmonoid