Programme wie Word zeigen im Speichern-Dialog standardmäßig einen Namen wie "Dok1.docx" an. Wenn diese Datei in dem Ordner bereits existiert, wird als Name "Dok2.docx" verwendet.
Diese Methode ermittelt einen Dateinamen, nach dem selben Muster wie es Word und Co. tun.
Benötigte Namespaces
System
System.IO
/// <summary>
/// Ermittelt einen neuen Standarddateinamen.
/// </summary>
/// <param name="path">Der Pfad, wo die Datei gespeichert werden soll.</param>
/// <param name="document">Der Name der Datei, ohne Erweiterung und ohne hochzählbarer Zahl.</param>
/// <param name="extension">Die Erweiterung der Datei mit einem Punkt am Anfang.</param>
/// <returns>Der Pfad zu einer Datei, die den angegebenen Namen mit dem kleinsten noch nicht vergebenen Index trägt.</returns>
static string GetNewDocumentName(string path, string document, string extension)
{
if (string.IsNullOrEmpty(path))
throw new ArgumentNullException("path");
if (string.IsNullOrEmpty(document))
throw new ArgumentNullException("document");
if (string.IsNullOrEmpty(extension))
throw new ArgumentNullException("extension");
int i = 1;
string file;
while (File.Exists(file = Path.Combine(path, document + i.ToString() + extension)))
++i;
return file;
}
3 Kommentare zum Snippet