Probléme de création de fichier avec Visual Studio.net(ASP.NET et c#)

kenza_sana Messages postés 149 Date d'inscription mardi 14 octobre 2003 Statut Membre Dernière intervention 19 janvier 2009 - 3 avril 2004 à 11:54
jesusonline Messages postés 6814 Date d'inscription dimanche 15 décembre 2002 Statut Membre Dernière intervention 13 octobre 2010 - 3 avril 2004 à 19:50
Bonjour j'ai un grand probléme pour créer un dossier

j'ai taper le code suivante que j'ai trouver dans le

MSDN de Visual Studioi.net en c#:

// Specify the directory you want to manipulate.
string path = @"c:\MyDir";

try
{
// Determine whether the directory exists.
if (Directory.Exists(path))
{
Console.WriteLine("That path exists

already.");
return;
}

// Try to create the directory.
DirectoryInfo di =

Directory.CreateDirectory(path);
Console.WriteLine("The directory was created

successfully at {0}.", Directory.GetCreationTime(path));

// Delete the directory.
di.Delete();
Console.WriteLine("The directory was deleted

successfully.");
}
catch (Exception e)
{
Console.WriteLine("The process failed: {0}",

e.ToString());
}
finally {}

}

Mais le dossier ne se crée pas je n'arrive pas a

comprednre pourquoi ??
Ce code je l'ai intégrer dans mon service web fichier

(*.asmx.cs) je ne voit pas pourquoi ca ne marche pas il

ne m'affiche aucune erreur : pour le path j'ai aussi

essayer ( string path = @"c:\\MyDir";) car j'ai vu ca

dans ce forum ...et j'ai ajputer l'espace de nom

(System.IO)
MERCI de m'aider

6 réponses

jesusonline Messages postés 6814 Date d'inscription dimanche 15 décembre 2002 Statut Membre Dernière intervention 13 octobre 2010 29
3 avril 2004 à 13:14
Je connais pas tres bien le C# mais je comprend pas certains truc ...

pour le if tu detecte si le dossier est deja crée ou non mais apres tu t'en sers pas. Le reste du code devrait etre la ssi il n'existe pas donc un truc du genre


if (Directory.Exists(path)) 
{
Console.WriteLine("That path exists 

already.");
return;
}
else
{
// Try to create the directory.
DirectoryInfo di = 

Directory.CreateDirectory(path);
Console.WriteLine("The directory was created 

successfully at {0}.", Directory.GetCreationTime(path));
}



et apres je comprend pas du tout pourkoi tu supprimes ton dossier (tu viens de le créer et ensuite tu le supprimes ???)

donc normalement tu n'as pas besoin de :
di.Delete();
Console.WriteLine("The directory was deleted successfully.");

Je connais pas (encore) C# donc c possible que je me sois trompé, mais ce que j'ai dit me parait coherent avec ton erreur: le code que t'as mis crée un dossier puis le supprime il n'y a donc aucune erreur et le dossier a été crée puis supprimé tu ne le vois donc pas ...

En esperant t'avoir aidé

Cyril (Alias Jesusonline)
0
kenza_sana Messages postés 149 Date d'inscription mardi 14 octobre 2003 Statut Membre Dernière intervention 19 janvier 2009
3 avril 2004 à 16:18
MERCI c'est trés gentille vous avez raison je vient de tester votre code et ca marche ......
Vous ne pouvez pas imaginez a quel point votre aide m'est importante car ca m'a bloqué pour mon projet et la grace a vous je peut avancer
Encore MERCI
0
kenza_sana Messages postés 149 Date d'inscription mardi 14 octobre 2003 Statut Membre Dernière intervention 19 janvier 2009
3 avril 2004 à 16:35
Encore merci mais quand je veut changer le nom du

dossier ca ne marche pas il crée toujours un dossier

appelé "MyDir" malgré que j'ai changer dans le code le

path pour qu'il devient (string path = @"c:\MyDossier";)
Merci de vouloir m'aider car dans mon application

j'ajoute des membres a ma base de donées et a chaque

ajout , un dossier doit etre créer automtiquement et qui

auras comme nom le (login) du nouveau membres (qui est

dans ma base la clé primaire)
Donc ce qui fait que les dossier que je vait créer vont

porter des noms différents alors que la je suis bloqué

dans un seul nom ...
En plus je crée aussi des sous dossier
Merci encore...
Si vous pouvez m'aider a changer ce nom car je ne

comprend pas pourquoi il ne fait que (MyDir).
0
jesusonline Messages postés 6814 Date d'inscription dimanche 15 décembre 2002 Statut Membre Dernière intervention 13 octobre 2010 29
3 avril 2004 à 17:09
Je comprend pas pourkoi on met un arobase devant la valeur de la variable ca doit etre spécifique à C# donc l'erreur peut venir d'ici car je ne comprend pas ca.

Sinon il faut modifier le nom avant le bloc try pas aprés. Je pense que l'erreur vient d'ici ...
sinon envoyez moi un bout de code :)

@+

Cyril (Alias Jesusonline)
0

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

Posez votre question
kenza_sana Messages postés 149 Date d'inscription mardi 14 octobre 2003 Statut Membre Dernière intervention 19 janvier 2009
3 avril 2004 à 19:09
Voici le code dans mon fichier (asmx.cs)

public void AjoutMembres(string log, string nom)

{
//.............................................
..............Ici il y'a le code de l'ajout des membres

dans la base .....................//

string path = @"c:\MyDossier";/*La je veut l'apeler

MyDossier */
try {
// Determine whether the directory exists.
if (Directory.Exists(path))
{
Console.WriteLine("That path exists already.");
return;
}
else
{
// Try to create the directory.
DirectoryInfo di = Directory.CreateDirectory(path);
Console.WriteLine("The directory was created

successfully at {0}.", Directory.GetCreationTime(path));
}

}
catch (Exception e)
{
Console.WriteLine("The

process failed: {0}", e.ToString());
}
finally {}


}

MERCI c'est vraiment trés gentil
0
jesusonline Messages postés 6814 Date d'inscription dimanche 15 décembre 2002 Statut Membre Dernière intervention 13 octobre 2010 29
3 avril 2004 à 19:50
J'ai simplifié ton code car je pense que certain truc ne te servait à rien (console.writeline)

donc en vb ca donne ca :

Dim path As String = "c:\rep"

Try
If Not Directory.Exists(path) Then
Directory.CreateDirectory(path)
End If
Catch ex As Exception
' Il y a une erreur
End Try

en C#

string path = "c:\MyDossier";

try {

if (!Directory.Exists(path))
{
Directory.CreateDirectory(path);
}
}
catch (Exception e)
{
/// Erreur
}

Donc tu n'as qu'a modifier la variable path comme tu veux avant le bloc try et ca devrait marcher

essaye comme cela
string path = "c://" + nom;

et la ca devrait te créer un dossier avec le nom de ton utilisateur

c'est possible qu'il y ait qq erreurs car je connais pas C# ... mais je pense au vu de ton code que la syntaxe est a peu pres correcte

@+

Cyril (Alias Jesusonline)
0
Rejoignez-nous