Se eu quiser criar um arquivo C:/a/b/test.txt
, posso fazer algo como:
File f = new File("C:/a/b/test.txt");
Além disso, quero usar FileOutputStream
para criar o arquivo. Então, como eu faria isso? Por alguma razão, o arquivo não é criado no diretório certo.
new File("/a/b/test.txt")
obras para ambos os sistemas. No Windows, ele será gravado no mesmo disco em que a JVM é executada.f.getParentFile().mkdirs(); f.createNewFile();
Você precisa garantir que os diretórios pai existam antes de escrever. Você pode fazer isso por
File#mkdirs()
.fonte
Com Java 7 , você pode usar
Path
,Paths
eFiles
:fonte
Usar:
Observe que eu alterei as barras para as barras duplas para caminhos no sistema de arquivos do Windows. Isso criará um arquivo vazio no caminho especificado.
fonte
createNewFile()
propósito, é desnecessário quando você escreve nele deFileOutputStream
qualquer maneira.Uma maneira melhor e mais simples de fazer isso:
Fonte
fonte
Isso deve criar um novo arquivo dentro de um diretório
fonte
Criar novo arquivo no caminho especificado
Saída do Programa:
Criação de arquivo bem-sucedida
fonte
Surpreendentemente, muitas das respostas não fornecem código de trabalho completo. Aqui está:
fonte
Para criar um arquivo e escrever uma string lá:
Isso funciona para Mac e PC.
fonte
Para usar o FileOutputStream, tente o seguinte:
fonte