2009-06-09 8 views

Répondre

3
Dim myString = "Hello world!" 
Dim saveFileDialog As New SaveFileDialog() 
saveFileDialog.Filter = "txt files (*.txt)|*.txt|All files (*.*)|*.*" 
saveFileDialog.FilterIndex = 2 
saveFileDialog.RestoreDirectory = True 

If saveFileDialog.ShowDialog() = DialogResult.OK Then 
    If saveFileDialog.FileName <> "" Then 
     System.IO.File.WriteAllText(saveFileDialog.FileName, myString) 
    End If 
End If 

Il n'y a pas grand-chose. Spécifiez les types de fichiers à enregistrer sous (dans un format assez mystérieux, consultez les docs de la propriété Filter pour en savoir plus), puis affichez la boîte de dialogue et a) récupérez le flux dans lequel écrire (comme illustré ici) avec la méthode OpenFile ou récupérez le nom de fichier sélectionné avec la propriété FileName.

Consultez les documents sur MSDN pour plus d'informations.

+0

mais comment spécifiez-vous le contenu du fichier? –

+0

oh ok, alors je devrais reformuler ma question. à l'exécution, je crée une chaîne et je veux enregistrer cette chaîne en tant que fichier. Comment puis-je faire cela? –

+0

@alex: voir ma réponse mise à jour. Je ne suis pas une personne VB, mais je pense que cela fonctionnera pour vous. –

-1

Recherchez le SaveFileDialog.

0

Voici un exemple de mon projet. Je lance le SFD dans le dossier mes documents de l'utilisateur car il y a un accès en écriture garanti.

SaveFileDialog sfd = new SaveFileDialog(); 
sfd.FileName = suggestedName + ".csv"; 
sfd.Title = "Choose Location For CSV"; 
sfd.InitialDirectory = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments); 
if (sfd.ShowDialog() != DialogResult.OK) 
{ 
    return; 
} 
string outputFileName = sfd.FileName; 
+0

merde je n'ai pas vu la balise vb.net désolé ma version est C# – Hardwareguy

0

oh ok, alors je devrais reformuler ma question. à l'exécution, je crée une chaîne et je veux enregistrer cette chaîne en tant que fichier. Comment puis-je faire cela?

Dim theStringToSave as String = "some string here" 
Dim sfd As New SaveFileDialog() 

sfd.Filter = "txt files (*.txt)|*.txt|(*.csv)|*.csv|All files (*.*)|*.*" 
sfd.FilterIndex = 2 
saveFileDialog1.RestoreDirectory = True 

If saveFileDialog1.ShowDialog() = DialogResult.OK Then 
    File.WriteAllText(sfd.FileName, theStringToSave) 
End If 
+0

je reçois une exception de première chance de type 'System.ArgumentException' s'est produite dans mscorlib.dll –

Questions connexes