Как отличить файл от каталога c
У меня есть форма, в которую вы перетаскиваете файлы, и мне было интересно, как я могу заставить приложение узнать, являются ли данные файлом или папкой.
Моя первая попытка состояла в том, чтобы искать "." в данных, но тогда в некоторых папках действительно есть".". в них. Я также пытался выполнить условие File.Exists и Directory.Exists, но тогда он ищет только текущий путь приложения, а не где-либо еще.
Есть ли в любом случае я могу каким-то образом применить .Exists в определенном каталоге или есть способ проверить, какой тип данных перетаскивается в форму?
2 ответа
В Windows вы можете отличить операцию перетаскивания 'move' от операции перетаскивания 'copy', проверив, нажата ли клавиша Ctrl . Как я могу сделать то же самое на OSX? Я использую фреймворк Qt.
Учитывая путь в виде строки, вы можете использовать System.IO.File.GetAttributes(путь к строке) , чтобы получить перечисление FileAttributes , а затем проверить, установлен ли флаг FileAttributes.Directory .
В более новых версиях вы можете использовать метод HasFlag , чтобы получить тот же результат:
Обратите также внимание, что FileAttributes может предоставлять различные другие флаги о file/folder,, такие как:
Похожие вопросы:
Я провел довольно много исследований, но до сих пор они не принесли никаких плодов. Единственные ссылки, которые я нашел, несколько похожи на мою ситуацию, даже не работают: Простой пример.
Как скопировать файл или папку в папку Program Files? Экспериментировал с: system(xcopy pro_s\\pro C:\\Program Files /e /i /h); Но мне это не удалось.
В Windows вы можете отличить операцию перетаскивания 'move' от операции перетаскивания 'copy', проверив, нажата ли клавиша Ctrl . Как я могу сделать то же самое на OSX? Я использую фреймворк Qt.
Я хочу проанализировать корневую папку, которая вводится пользователем с помощью многопоточности и многопроцессорной обработки в разных версиях. Но как я могу отличить, когда я разбираю корневую.
Я пытаюсь создать PST с образцом MSGs. Вместо перетаскивания в нужные папки, предоставляет ли Outlook.MAPIFolder in (VBA) способ добавить файл .MSG из файловой системы в папку Outlook (я не хочу.
Я хочу обнаружить файл exe , созданный с помощью инструментов zip? например, 7z или WinRAR или . я имею в виду SFX (самораспаковывающиеся исполняемые файлы) Поэтому я должен найти способ отличить.
Я новичок в Electron Framework. Я пытаюсь разработать настольное приложение с использованием Electron Framework. Я хочу реализовать такой вариант использования, как team viewer, с левой стороны, где.
Читайте также: