Como criar um diretório no c ++
Video: Criar Arquivos e Pastas em Linguagem C
Conteúdo
Se você deseja criar um diretório, você pode chamar o mkdir função. Se a função pode criar o diretório para você, ele retorna um 0. Caso contrário, ele retorna um valor diferente de zero. (Quando você executá-lo você recebe um -1, mas sua melhor aposta - sempre - é testá-lo contra a 0.)
Video: Como Criar um Novo Disco Local no Windows 7
Aqui está um código de exemplo (encontrado na MaKeDIRectory exemplo) que utiliza esta função:
#incluir#include #include using namespace std-int main () {if (mkdir ("../abc")! = 0) {cout lt; lt; "Eu sinto muito. eu não estava" lt; lt; endl-cout lt; lt; "capaz de criar seu diretório" lt; lt; endl-cout lt; lt; "como você me pediu. Espero" lt; lt; endl-cout lt; lt; "você ainda são capazes de atingir" lt; lt; endl-cout lt; lt; "seus objetivos na vida. Agora vá embora." lt; lt; endl-} return 0-}
Aviso (como sempre) que você usou uma barra (/) na chamada para mkdir. No Windows, você pode usar uma barra ou uma barra invertida. Mas se você usar uma barra invertida, você tem que usar dois deles (como faria normalmente para obter uma barra invertida na seqüência de um C ++).
Por uma questão de portabilidade, use sempre uma barra. Depois de executar este exemplo, você deve ver um novo diretório chamado abc adicionado ao / CPP_AIO / BookV / Chapter04 diretório em seu sistema.
Seria bom para criar uma estrutura de diretórios-árvore inteira de uma só vez - fazendo uma chamada, como mkdir ( “/ abc / def / ghi / jkl”) sem ter qualquer um dos abc, def, ou ghi diretórios já existente. Mas, infelizmente, você não pode. A função não irá criar um jkl diretório a menos que o / ABC / DEF / GHI existe diretório. Isso significa que você tem que quebrar essa chamada em várias chamadas: Primeiro crie /abc. Em seguida, crie / ABC / def, e assim por diante.
Se você quiser fazer todos os diretórios de uma vez, você pode usar o sistema() função. Se você executar system ( “mkdir abc def ghi jkl”) -, você será capaz de fazer o diretório em uma só penada.