Astuce pour un nom de fichier [c#] [Résolu]

Signaler
Messages postés
65
Date d'inscription
mardi 9 mars 2004
Statut
Membre
Dernière intervention
3 septembre 2004
-
Messages postés
65
Date d'inscription
mardi 9 mars 2004
Statut
Membre
Dernière intervention
3 septembre 2004
-
Bonjour,

Je mets en place un formulaire permettant aux administrateurs du site de mettre en ligne des dossiers.

Lorsqu'un utilisateur veut uploader un fichier monfichier.doc par exemple, je voudrais qu'un enregistrement soit ajouté dans la table "dossiers" qui a pour clé primaire id en numéro auto, et que le fichier uploadé soit renommé de cette amnière :
clé primaire de la ligne ajouter + extension du fichier.

Question 1 : Y a-til une solution plus simple que d'uploader d'abord et renommer ensuite ?

Question 2 : Pour permettre aux utilisateurs de télécharger le dossier, je dois récupérer l'extension du fichier (car ça peut être un dossier zip, ou fichier excel, ou document word)
Mais comment faire ?
[ Je précise que les dossiers à téléchargés sont stockés dans un répertoire du site]
Est-ce que je dois parcourir le dossier à la recherche d'un fichier commençant par l'id de la ligne ?
Si oui, comment faire ?

Merci d'avance.

*** Kati ***

3 réponses

Messages postés
649
Date d'inscription
mardi 8 juin 2004
Statut
Membre
Dernière intervention
9 septembre 2004
7
et utilise
string[] dirs = Directory.GetFiles("path", "nb*");

puis dirs[0].subString(dirs[0].lastIndexOf(".")) te renvoie l'extention
Messages postés
65
Date d'inscription
mardi 9 mars 2004
Statut
Membre
Dernière intervention
3 septembre 2004

Bonjour,

Merci pour vos conseils.
Finalement, j'ai uploadé mon image, et je l'ai renomméen ensuite avec un File.Move.
Pour la gestion des extensions, j'ai crée une fonction que j'ai placée dans ma classe et qui me renvoit le nom complet du dossier :

public string GetName()
{

String myFile=" ";
// on récupère le nom du répertoire où sont stockés les dossiers
DirectoryInfo aDir = new DirectoryInfo( Convert.ToString(ConfigurationSettings.AppSettings["MonRepertoire"]) );

// on recherche le dossier correspondant à l'id
FileInfo[] files = aDir.GetFiles( monId + ".*" );

// on récupère le nom du fichier trouvé
foreach( FileInfo file in files )
{
myFile= file.Name;
}
return myFile;
}

Merci pour votre aide en tt k !

A++

*** Kati ***
Messages postés
649
Date d'inscription
mardi 8 juin 2004
Statut
Membre
Dernière intervention
9 septembre 2004
7
tu peux gardder en memoire le fichier complet et une fois que tu l'as tu le cree en une seule fois...