Simulando uma plataforma de árvore de diretório independentemente
-
26-09-2019 - |
Pergunta
Estou usando o QT e o Ruby em um aplicativo onde tenho que manipular alguns diretórios e renomear/mover arquivos. No entanto, antes da manipulação real, preciso mostrar uma "visualização", ou seja, simulação das alterações. O que eu fiz no OS X e Linux é uma coleção de mkdir
e touch
comandos, em um espaço de TMP gravável, para construir minha referida "árvore de diretório", alimentou isso com QT's QFileSystemModel
widget e QTreeView
, e eu obteria meus resultados esperados.
No entanto, não posso fazer isso no Windows, porque não encontrei nenhuma contraparte nativa para touch
E assim não pude mostrar os arquivos. Uma sugestão que veio à mente é criar minha árvore de diretório na memória, mas então não posso alimentá -la para QFileSystemModel
não mais.
Como posso fazer isso?
Solução
O Windows vem com uma ferramenta chamada fsutil, que pode ser usada para criar arquivos fictícios semelhantes ao comando Unix Touch:
FSUTIL FILE CREATENEW Comprimento de nome do caminho
Não tenho certeza se o FSUTIL existe por padrão nas edições domésticas do Windows, mas pelo menos está nas versões profissionais do XP através do Windows 7.
Veja o documentação completa para fsutil.