Enregistrer tableau.
Fermé
drspinoza
Messages postés
51
Date d'inscription
dimanche 25 octobre 2015
Statut
Membre
Dernière intervention
9 mai 2016
-
13 déc. 2015 à 07:10
Whismeril Messages postés 18279 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 17 mars 2023 - 13 déc. 2015 à 21:16
Whismeril Messages postés 18279 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 17 mars 2023 - 13 déc. 2015 à 21:16
A voir également:
- Enregistrer tableau.
- Enregistrer video youtube - Guide
- Enregistrer son ecran - Guide
- Tableau croisé dynamique - Guide
- Audacity enregistrer son pc - Guide
- Enregistrer musique youtube - Guide
1 réponse
Whismeril
Messages postés
18279
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
17 mars 2023
888
13 déc. 2015 à 09:27
13 déc. 2015 à 09:27
Bonjour,
Je ne connais pas Java, donc je ne te donnerai pas de code en exemple, mais il faut enregistrer les données quelque part, et au démarrage regarder si un enregistrement existe et le charger le cas échéant.
Pour l'enregistrement tu as beaucoup de solutions, en voici quelques unes:
--
Je ne connais pas Java, donc je ne te donnerai pas de code en exemple, mais il faut enregistrer les données quelque part, et au démarrage regarder si un enregistrement existe et le charger le cas échéant.
Pour l'enregistrement tu as beaucoup de solutions, en voici quelques unes:
- fichiers textes "en ligne": taboulés, csv, ....
- fichiers xml ou json.
- base de données.
- tableur (excel, .....)
--
13 déc. 2015 à 11:58
http://www.jdom.org/ pour le xml, qui reste le plus simple quand on débute,
même si le jdbc pour la base de données est pas compliqué :)
13 déc. 2015 à 12:05
Il y a aussi les fichiers binaire.
En Java toutes les classes qui implémentent l'interface Serializable peuvent enregistrer leurs objets tels qu'ils sont en mémoire directement dans un fichier.
Dans tous les cas tu devrais regarder les OutputStram et InputStream, en particulier les FileOutputStream/FileInputStream et pour la sérialisation ObjectOutputStream/ObjectInputStream.
Exemple de (dé)sérialisation :
import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; import java.io.ObjectInputStream; import java.io.ObjectOutputStream; import java.util.Arrays; public class Test { public static void main(String[] args) { File backup = new File("backup.ser"); String[] tabDefault = { "a", "b", "c" }; String[] tab = loadBackup(backup, tabDefault); // [a, b, c] la 1ère fois, [1, 2, 3] ensuite System.out.println(Arrays.toString(tab)); tab = new String[] { "1", "2", "3" }; saveBackup(backup, tab); } private static void saveBackup(File backup, Object obj) { try { ObjectOutputStream out = new ObjectOutputStream(new FileOutputStream(backup)); out.writeObject(obj); out.close(); } catch (IOException e) { e.printStackTrace(); } } @SuppressWarnings("unchecked") private static <E> E loadBackup(File backup, E defaultObj) { try { ObjectInputStream in = new ObjectInputStream(new FileInputStream(backup)); E obj = (E) in.readObject(); in.close(); return obj; } catch (IOException | ClassNotFoundException e) { System.err.println(e); return defaultObj; } } }Remarque : le fichier "backup.ser" étant au format binaire, son contenu n'est pas directement éditable, il est fait par Java, pour Java.
Voici son contenu pour mon exemple (on peut deviner une partie des valeurs)
13 déc. 2015 à 19:30
Est-il possible de remplacer le backup.set par un .txt ?
13 déc. 2015 à 20:46
Pour un fichier .txt le contenu attendu devrait être textuel, donc voir plutôt les propositions de Whismeril.
13 déc. 2015 à 20:48
Parce que le fichier crée doit être lisible par l'Humain.