Von Environment.SpecialFolder
Das System spezielle Ordner sind Ordner wie Programmdateien, Programme, System oder Startup, die gemeinsame Informationen enthalten. Spezielle Ordner werden standardmäßig vom System oder explizit vom Benutzer festgelegt, wenn eine Windows-Version installiert wird.
Die GetFolderPath-Methode gibt die Positionen zurück, die dieser -Enumeration zugeordnet sind. Die Positionen dieser Ordner können unterschiedliche Werte auf verschiedenen Betriebssystemen haben, der Benutzer kann einige der Standorte ändern, und die Standorte sind lokalisiert.
Verwenden Sie einfach
string path = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments);
files = Directory.GetFiles(path, searchPattern);
In meinem Computer, gibt es als C:\Users\Soner\Documents
Gibt es eine Möglichkeit Environment.GetFolderPath zu verwenden, aber irgendwie idetifying die richtigen speical Ordner nach dem Weg Ich bin derzeit Überprüfung?
Da SpecialFolder
Enumerationstyp ist, können Sie ihre Werte in einer Schleife durchlaufen. Hier, wie es aussieht;
public enum SpecialFolder
{
AdminTools = 0x30,
ApplicationData = 0x1a,
CDBurning = 0x3b,
CommonAdminTools = 0x2f,
CommonApplicationData = 0x23,
CommonDesktopDirectory = 0x19,
CommonDocuments = 0x2e,
CommonMusic = 0x35,
CommonOemLinks = 0x3a,
CommonPictures = 0x36,
CommonProgramFiles = 0x2b,
CommonProgramFilesX86 = 0x2c,
CommonPrograms = 0x17,
CommonStartMenu = 0x16,
CommonStartup = 0x18,
CommonTemplates = 0x2d,
CommonVideos = 0x37,
Cookies = 0x21,
Desktop = 0,
DesktopDirectory = 0x10,
Favorites = 6,
Fonts = 20,
History = 0x22,
InternetCache = 0x20,
LocalApplicationData = 0x1c,
LocalizedResources = 0x39,
MyComputer = 0x11,
MyDocuments = 5,
MyMusic = 13,
MyPictures = 0x27,
MyVideos = 14,
NetworkShortcuts = 0x13,
Personal = 5,
PrinterShortcuts = 0x1b,
ProgramFiles = 0x26,
ProgramFilesX86 = 0x2a,
Programs = 2,
Recent = 8,
Resources = 0x38,
SendTo = 9,
StartMenu = 11,
Startup = 7,
System = 0x25,
SystemX86 = 0x29,
Templates = 0x15,
UserProfile = 40,
Windows = 0x24
}
Ich habe meine Frage bearbeitet, um eine weitere Frage hinzuzufügen, wenn Sie die Antwort darauf auch wissen sollten. –
können Sie sehr gut den Pfad, den Sie haben, mit diesem 'Environment.GetFolderPath (...) 'gleichsetzen und wenn Sie übereinstimmen, können Sie fortfahren oder Sie können einfach' Continue 'im Schleifenkonstrukt aufrufen. – Saravanan
Ich meinte etwas automatisch. etwas wie (Pseudocode): SpeicalFolder-Ordner = Environment.GetSpeicalFolderByFullPath (Pfad); –