Inclure des fichier dans un projet java

cs_coltman Messages postés 97 Date d'inscription jeudi 3 janvier 2008 Statut Membre Dernière intervention 10 février 2009 - 28 janv. 2009 à 12:22
cs_coltman Messages postés 97 Date d'inscription jeudi 3 janvier 2008 Statut Membre Dernière intervention 10 février 2009 - 10 févr. 2009 à 12:03
Bonjour,

J'essaye en fait d'inclure des fichier "bruts" dans mon projet java qui, une fois déployé, s'appuiera sur ces fichiers là pour bosser ...

En gros y a-t-il moyen d'"incorporer" des fichiers par exemple word, excel, xml etc... dans un projet java pour pouvoir compiler executer le prog qui se servira de ces fichiers.


Merci d'avance pour vos reponses

16 réponses

dvoraky Messages postés 744 Date d'inscription dimanche 1 avril 2007 Statut Membre Dernière intervention 9 mai 2010 8
28 janv. 2009 à 13:36
Salut,

Euh coltman, tu déconnes là, non?
Il suffit juste que ton fichier en question soit, par exemple, dans le même dossier que ton fichier .class généré après compilation et, dans ton programme, quand tu vas ouvrir le fichier, ben tu mettras le chemin adéquat.
Genre :
File fichier = new File("./tonFichierQuiFaitJeSaisPasQuoi.tonCul");

Enfin, bref, tu mets un chemin relatif ou absolu dans ton fichier :
File fichier = new File("C:\\dossier\tonFichier.txt");

<hr width="100%" size="2" />
 C'est après des heures de codage que j'ai compris pourquoi les créateurs de Java ont choisi une tasse de café comme logo...
0
cs_coltman Messages postés 97 Date d'inscription jeudi 3 janvier 2008 Statut Membre Dernière intervention 10 février 2009
28 janv. 2009 à 13:51
mais nan c'est pas ca que je demandais exactement ...

je voulais trouver une solution dans laquelle je donne à l'utilisateur un jar ou un exe, sans qu'il n'ait à faire plus (et notemment à faire attention que les fichiers sont bien toujours ensembles .... ) libre à lui de placer l'executable où il veut là ou sa lui plait ... c'est pour ca que j'ai pensé a des fichiers "intégrés" ...
0
dvoraky Messages postés 744 Date d'inscription dimanche 1 avril 2007 Statut Membre Dernière intervention 9 mai 2010 8
28 janv. 2009 à 13:59
Euh...
C'est bizarre.
Prenons un projet nommé : monProjet.
Dans ton Workspace (tu utilises Eclipse, supputons), tu vas avoir un dossier "monProjet" dans lequel il y aura des sous dossier "bin", "src", etc...
Ben dans le dossier "monProjet", tu vas mettre tes fichiers soit à la racine du dossier, soit dans un sous dossier "ressources", tu vois un truc du genre.

Bon par contre si c'est pour, ensuite, exporter ton projet en JAR, il te faut appeller tes fichiers différemment. Fais une recherche Google "appeler fichier jar". un indice --> getResourcesAsStream
Mais bon, avec Eclipse, quand tu vas exporter tu projet en JAR, tous les fichiers présents seront exportés s'ils sont cochés. Regarde bien les options.

<hr width="100%" size="2" />
 C'est après des heures de codage que j'ai compris pourquoi les créateurs de Java ont choisi une tasse de café comme logo...
0
cs_coltman Messages postés 97 Date d'inscription jeudi 3 janvier 2008 Statut Membre Dernière intervention 10 février 2009
28 janv. 2009 à 14:10
ah par contre dans eclipse il regarde meme pas mes fichiers j'ai meme pas le choix de les cocher
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
dvoraky Messages postés 744 Date d'inscription dimanche 1 avril 2007 Statut Membre Dernière intervention 9 mai 2010 8
28 janv. 2009 à 14:23
Pop pop pop, je te crois pas.

Tu cliques droit sur ton projet --> Export
Ensuite dans la fenetre qui apparait à gauche, tu as un JTree avec ton projet grisé mais coché, si tu le décoches et recoches il va te prendre tous tes fichiers qui sont dans ce dossier. Sinon, si tu navigues dans le noeud de ton projet dans ce JTree à droite va apparaître les fichiers qui sont présents dans le dossier sélectionné ou le package sélectionné.

<hr width="100%" size="2" />
 C'est après des heures de codage que j'ai compris pourquoi les créateurs de Java ont choisi une tasse de café comme logo...
0
cs_coltman Messages postés 97 Date d'inscription jeudi 3 janvier 2008 Statut Membre Dernière intervention 10 février 2009
28 janv. 2009 à 14:30
je peux te jurer sur qui tu veux qu'il me met pas mon fichier !!!!
0
dvoraky Messages postés 744 Date d'inscription dimanche 1 avril 2007 Statut Membre Dernière intervention 9 mai 2010 8
28 janv. 2009 à 14:55
Jures le sur la tête de Chantal Goya?!?!
Bon je rigole (par respect pour elle)

2 solutions pour la suite :
1)
Dans Eclipse, dans ton projet, tu vas faire un clic droit dessus, ensuite, new--> Folder, tu choisis son nom et OK.
Ensuite, clic droit sur le projet, Import --> File System --> , et là positionne toi dans le dossier où tu as mis ton fichier et dans le Into Folder tu mets le dossier que tu as créé précédemment. tac il apparait dans "Package Explorer" à gauche.

2)
Fais pareil que tout à l'heure pour créer un dossier dans ton projet (new --> ...)
Ensuite, avec ton explorateur Windaube ou Gnome, va là où est ton fichier (c:\ par exemple) et fais un glissé déposé de ce fichier dans le dossier sous Eclipse. tac pareil que tout à l'heure, il apparait dans "Package Explorer" à gauche.

Ensuite quand tu vas faire Export --> Jar File,à gauche il y a le JTree où il y a tous tes projets, cliques sur le '+' de ton projet en question. Pouf tous les sous dossier s'affichent ainsi que le dossier que tu as créé tout à l'heure, et si tu cliques sur ce sous dossier, à droite s'affiche le contenu de ce dossier et là tu vois le fichier que tu as rajouté.

<hr width="100%" size="2" />
 C'est après des heures de codage que j'ai compris pourquoi les créateurs de Java ont choisi une tasse de café comme logo...
0
cs_coltman Messages postés 97 Date d'inscription jeudi 3 janvier 2008 Statut Membre Dernière intervention 10 février 2009
28 janv. 2009 à 15:14
arg ! filenotfoundexception !! malgré que je l'aie incorporé dans le package ca ne tourne pas ..
0
dvoraky Messages postés 744 Date d'inscription dimanche 1 avril 2007 Statut Membre Dernière intervention 9 mai 2010 8
28 janv. 2009 à 15:27
Bon mais c'est déjà ça!

Maintenant, il faut que tu joues avec les "/monDossier/monFichier.txt" ou les "./monDossier/monFichier.txt"
Affiches toi le répertoire courant etc... tentes, amuses toi....

PS : avec ton explorateur windaube, vas dans le dossier de ton projet et vérifie bien que le fichier a été copié dans le dossier en question....

<hr width="100%" size="2" />
 C'est après des heures de codage que j'ai compris pourquoi les créateurs de Java ont choisi une tasse de café comme logo...
0
cs_coltman Messages postés 97 Date d'inscription jeudi 3 janvier 2008 Statut Membre Dernière intervention 10 février 2009
9 févr. 2009 à 23:03
re !!!

j'avais laissé tombé pour y revenir plus tard et donc me revoilà !!!

alors :

ta methode ne marche pas dvoraky puisque quand je me mets dans un autre ordi, il ne trouve pas les fichier :S !!!! et j'ai essayé ac toutes les combi possibles ...

j'ai decidé donc de passer par les getResourcesAsStream pareil, meme souci, il ne fait qu'un raccourci vers les fichiers presents sur mon disque, du coup, hop sur un autre pc no marchando .... une idée ??? c'est le dernier truc qui bug encore dans mon prog je sens que je vais peter un cable je vais exploser !!!!!!!!!!
0
dvoraky Messages postés 744 Date d'inscription dimanche 1 avril 2007 Statut Membre Dernière intervention 9 mai 2010 8
10 févr. 2009 à 10:45
Salut,

En même temps, sur un autre pc, c'est pas forcément évident que tu ais le même chemin vers un fichier et encore moins évident que le fichier en question soit présent...
Si tu veux récupérer un fichier qui sera toujours au même endroit, utilises les properties du System :

System.getProperties("user.home"); --> ca te renverra toujours le Dossier de l'utilisateur courant
Donc sur Windaube : c:\Documents and Settings\Coltman
Par exemple.

<hr width="100%" size="2" />
 C'est après des heures de codage que j'ai compris pourquoi les créateurs de Java ont choisi une tasse de café comme logo...
0
cs_coltman Messages postés 97 Date d'inscription jeudi 3 janvier 2008 Statut Membre Dernière intervention 10 février 2009
10 févr. 2009 à 11:05
donc là concretement il faut absolument que je mette en place une procedure d'install qui va copier les fichiers (icones, xml etc...) dont j'ai besoin dans le home de l'utilisateur c'est ca?? (ou y a-t-il un autre moyen ??)
0
dvoraky Messages postés 744 Date d'inscription dimanche 1 avril 2007 Statut Membre Dernière intervention 9 mai 2010 8
10 févr. 2009 à 11:16
Salut,

Ben si tu veux que ton appli puisse avoir des fichiers sur une machine étrangère à la tienne, oui, il va falloir faire une procédure d'install.... un peu évident non? La machine cliente va pas créer les fichiers qu'il te faut.
Le plus simple est d'utiliser le user.home comme ça, ton appli est plus multi-plateforme (l'interet de java en soit) parce passer une chemin du genre c:\mes\ couilles... bon dans le monde Unix tu m'as compris.
Mais je ne comprend vraiment pas ce que tu veux faire...
Si c'est des fichiers de configs, tu les mets dans ton Jar et puis roule...

<hr width="100%" size="2" />
 C'est après des heures de codage que j'ai compris pourquoi les créateurs de Java ont choisi une tasse de café comme logo...
0
cs_coltman Messages postés 97 Date d'inscription jeudi 3 janvier 2008 Statut Membre Dernière intervention 10 février 2009
10 févr. 2009 à 11:34
c'est pas vraiment des fichiers config, j'ai des icones et des templates xml doc et xls ainsi qu'une mini base access (pour la base access c dans le contrat ... je me suis fait assez vanné comme ca :D ....)
0
dvoraky Messages postés 744 Date d'inscription dimanche 1 avril 2007 Statut Membre Dernière intervention 9 mai 2010 8
10 févr. 2009 à 11:56
Salut,

Et ils demandent à ce que ton appli puisse être déployé comme ça sur une autre bécane?
Là c'est chaud...
Les templates xml doc et xls, tu pourrais les inclure mais la base accès non quoi...
Je vois pas, franchement, je vois pas trop là...

<hr width="100%" size="2" />
 C'est après des heures de codage que j'ai compris pourquoi les créateurs de Java ont choisi une tasse de café comme logo...
0
cs_coltman Messages postés 97 Date d'inscription jeudi 3 janvier 2008 Statut Membre Dernière intervention 10 février 2009
10 févr. 2009 à 12:03
oui exact ... c'est pas une base bourrée de données, il y a juste le squellette, les tables c'est tout ...
0