Fichiers

cs_psychodingue Messages postés 67 Date d'inscription samedi 5 janvier 2002 Statut Membre Dernière intervention 2 juin 2005 - 23 avril 2003 à 15:26
cs_psychodingue Messages postés 67 Date d'inscription samedi 5 janvier 2002 Statut Membre Dernière intervention 2 juin 2005 - 24 avril 2003 à 01:00
Salut, c'est encore moi lol

Alors c'coup-ci, j'voudrai savoir calculer la taille d'un fichier en enlevant les espaces... J'peux pas dire de mettre le contenu dans une variable string parceque les fichiers font + de 700 Mo... vous avez une solution?

Sinon j'aimerai récupérer toute les fichiers d'un dossier en les filtrant par leur nom, récupérer ceux qui continnen le mot sqdsq par exemple, ou alors selon une extention.

Voilà, merci
@ bientôt

7 réponses

cs_Duss Messages postés 890 Date d'inscription lundi 8 avril 2002 Statut Membre Dernière intervention 29 juillet 2004 11
23 avril 2003 à 18:26
salut,
pour l histoire des espaces je ne sais pas autrment qu en lisant les fichiers !!
pour le filtre, tu fais un listFiles() sur un File instancié sur ton repertoire et puis tu parcours le tableau en faisant des tests ;)
Duss
0
CoreBreaker Messages postés 540 Date d'inscription dimanche 23 mars 2003 Statut Membre Dernière intervention 5 octobre 2007 1
23 avril 2003 à 21:51
Calcul de la taille sans les espaces:
FileInputStream f= new FileInputStream("fichier");
byte[] buffer= new byte[102400];
int aux, taille= 0;

while( (aux= f.read(buffer, 0, 102400)) > 0 )
{
int j, i= 0;
String s= new String(buffer);
for(; (j= s.indexOf(' ', i)) >= 0; i= j + 1)
taile+= j - i;
}

Récupérer toute les fichiers d'un dossier en les filtrant par leur nom:
File f= new File("dossier");
File[] fichiers= f.listFiles(new FilenameFilter()
{
public boolean accept(File dir,String name)
{
return (name.indexOf("sqdsq") >= 0) || name.endsWith(extension);
}
});

Core Breaker :)
0
cs_psychodingue Messages postés 67 Date d'inscription samedi 5 janvier 2002 Statut Membre Dernière intervention 2 juin 2005
23 avril 2003 à 22:10
Merci beaucoup,
Est-ce que tu peux me résoudre ce problème là qui m'énerve bien comme il faut?

J'doit lire dans une fichier, alors je fais:

File f2 = new File("C:/Program Files/eMule/preferences.ini");
FileInputStream is2 = new FileInputStream(f2);
byte[] line2 = new byte[(int)f2.length()];
is2.read(line2);
String t2 = new String(line2);
String TempDir = t2.substring(t2.indexOf("TempDir=")+8, t2.indexOf("\n", t2.indexOf("TempDir=")+8));
System.out.println(TempDir);

là je trouve un truc comme "C:\Program Files\eMule"

pour l'instant ça va

alors je fais:

TempDir = TempDir.replace('\\', '/');
et je trouve:
"C:/Program Files/eMule" quel bonheur!

y'a pu qu'à mettre un "/" a la fin mais j'arrive pas, je fais:
TempDir = TempDir + "/" ce qui donne "/:/Program Files/eMule"

donc je ne comprend pas, tu saurai me guider?

merci d'avance
@ bientôt
0
CoreBreaker Messages postés 540 Date d'inscription dimanche 23 mars 2003 Statut Membre Dernière intervention 5 octobre 2007 1
24 avril 2003 à 00:26
C'est bizarre comme comportement !!
Essai:
TempDir = (TempDir+"\").replace('\\', '/');

Core Breaker :)
0

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

Posez votre question
cs_psychodingue Messages postés 67 Date d'inscription samedi 5 janvier 2002 Statut Membre Dernière intervention 2 juin 2005
24 avril 2003 à 00:37
arf... ça marche toujours pas, tu veux que je t'envoi c'que j'ai fait?
0
CoreBreaker Messages postés 540 Date d'inscription dimanche 23 mars 2003 Statut Membre Dernière intervention 5 octobre 2007 1
24 avril 2003 à 00:56
Non pas la peine
J'ai reproduit le problème

Core Breaker :)
0
cs_psychodingue Messages postés 67 Date d'inscription samedi 5 janvier 2002 Statut Membre Dernière intervention 2 juin 2005
24 avril 2003 à 01:00
lol ça me fait rire parceque c'est un truc trop con et quand tu affiche la viriable, tu remarque que le / est a la place du premier caractère. Si tu remplace le / par n'importe koi, ça fera pareil, si tu ajoute plusieur caractère, ils se mettront à la place des premiers, si tu fait "la variable est égale à " + tempdir + "jjjj" ça affichera "jjjjariable est égale à c:/........."

c'est bizard ça qd même
j'te laisse réfléchir dessus
0
Rejoignez-nous