package MiniProjeto;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.nio.file.DirectoryNotEmptyException;
import java.nio.file.Files;
import java.nio.file.NoSuchFileException;
import java.nio.file.Paths;
import java.util.Scanner;
public class ManipulaçãodeArquivo {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner teclado = new Scanner (System.in);
File arquivo = new File("manipulacao.txt"); // cria uma .txt no workspace
String codigo;
String escrevendo;
System.out.println("Menu: " + "\n" +
"Digite 0 - Para sair do programa" + "\n" +
"Digite 1 - Inserir Nomes" + "\n" +
"Digite 2 - Listar Nomes" + "\n" +
"Digite 3 - Apagar Nomes" + "\n" +
"Digite 4 - Deletar arquivo");
try {
arquivo.createNewFile();
}catch(IOException ex){
}
do {
System.out.println("\n" + "Digite um codigo:");
codigo = teclado.next();
switch(codigo) {
case "0":
System.out.println("Voce saiu do programa!");
break;
case "1":
System.out.println("");
System.out.println("Digite um nome: ");
try {
//Escrever no arquivo
escrevendo = teclado.next();
FileWriter CriarEscrever = new FileWriter(arquivo, true); // Parametro false - ele substitui || true
BufferedWriter escrever = new BufferedWriter(CriarEscrever);
escrever.write(escrevendo);
escrever.newLine();
escrever.close();
CriarEscrever.close();
}catch (IOException e) {
e.printStackTrace();
}
break;
case "2":
try {
//Ler o arquivo
FileReader CriarExibir = new FileReader(arquivo);
System.out.println("Lista dos nomes:");
BufferedReader ler = new BufferedReader(CriarExibir);
String exibir = ler.readLine();
while(exibir != null) {
System.out.println(exibir);
exibir = ler.readLine();
}
}catch (IOException ex) {
}
break;
case "3":
try {
//Escrever no arquivo
FileWriter CriarExcluir = new FileWriter(arquivo, false); // Parametro false - ele substitui || true
BufferedWriter escrever = new BufferedWriter(CriarExcluir);
escrever.write("");
CriarExcluir.close();
}catch (IOException e) {
e.printStackTrace();
}
case "4":
//Deletar o arquivo
if( arquivo.delete()) {
System.out.println("Arquivo Deletado Com sucesso");
}
break;
default:
System.out.println("Codigo Invalido!");
break;
}
}while(!codigo.equals("0")); //&& !codigo.equals("4"));
teclado.close();
}
}
Queria saber uma forma de o Scanner pegar o espaco vazio pois quando digito um nome mesmo no teclado.nextLine ele nao pega um nome composto ex(Joao Pedro) e tambem queria saber como excluir um .txt pois usando o metodo .delete ele exclui porem o arquivo precisa estar vazio , no case 3 : foi uma tentativa de excluir oque tem dentro do arquivo.Preciso de ajuda nesses dois pontos