Preciso criar um arquivo txt para salvar arquivos, e poder ler também, comecei com o codigo so que o que o usuário digita não salva. Alguém poderia me ajudar?

package Model;

import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintWriter;

public class app {

private static List<Jogador> jogadores;

private static Scanner teclado;

public static void cadastrarJogador() throws IOException {

	// carregar arquivo de texto para arrylist

	System.out.println("Opção selecionada: Cadastrar Jogador");

	File arquivo = new File(
			"/Users/*****/Documents/Documentos Brendo/Unifacear/POO/Atividade jogador/Jogador cadastrado.txt");

	if (!arquivo.exists()) {
		arquivo.createNewFile();

	}

	FileWriter escrever_no_arquivo = new FileWriter(arquivo);

	// cria um novo jogador
	Jogador jogador = new Jogador();

	System.out.print("Informe o nome: ");

	escrever_no_arquivo.write("");

	jogador.setNome(teclado.next());
	escrever_no_arquivo.flush();

	System.out.print("Informe a posição: ");

	escrever_no_arquivo.write("");

	jogador.setPosicao(teclado.next());
	escrever_no_arquivo.flush();

	System.out.print("Informe o número da camisa: ");
	escrever_no_arquivo.write("");

	jogador.setNumeroDaCamisa(Byte.parseByte(teclado.next()));
	escrever_no_arquivo.flush();

	System.out.print("Informe o usuário: ");

	escrever_no_arquivo.write("");
	jogador.setUsuario(teclado.next());
	escrever_no_arquivo.flush();

	System.out.print("Informe a senha: ");

	escrever_no_arquivo.write("");

	jogador.setSenha(teclado.next());
	escrever_no_arquivo.flush();

	System.out.println("Jogador criado com sucesso!");

	// adiciona jogador na lista
	jogadores.add(jogador);

	// cerregar da arrylist para arquivo de texto

}

List<String> listPalavras = new ArrayList<>();

public static void listarTodos() throws IOException {
	System.out.println("Jogadores cadastrados:");

	FileInputStream stream = new FileInputStream(
			"/Users/******/Documents/Documentos Brendo/Unifacear/POO/Atividade jogador/Jogador cadastrado.txt");
	InputStreamReader reader = new InputStreamReader(stream);
	BufferedReader br = new BufferedReader(reader);
	String linha = br.readLine();
	while (linha != null) {
		System.out.println(linha);
		linha = br.readLine();

		for (Jogador jogador : jogadores) {
			System.out.println("");
			System.out.println("Nome....: " + jogador.getNome());
			System.out.println("Posição.: " + jogador.getPosicao());
			System.out.println("Camisa..: " + jogador.getNumeroDaCamisa());
			System.out.println("Usuário.: " + jogador.getUsuario());
			System.out.println("Senha...: " + jogador.getSenha());
			System.out.println("Situação: " + (jogador.isSituacao() ? "Ativo" : "Inativo"));
			System.out.println("");

		}
	}
}

public static void main(String[] args) throws Exception {
	// instancia o teclado
	teclado = new Scanner(System.in);
	// instancia a lista de jogadores

	// trocar passar o metodo
	jogadores = new ArrayList<>();

	// variavel para verificar a opção selecionada do menu
	String opcaoDigitada = "";

	// loop infinito
	while (true) {
		System.out.println("---------------------------------");
		System.out.println("MENU JOGADOR");
		System.out.println("---------------------------------");
		System.out.println("1 - Cadastrar");
		System.out.println("2 - Editar");
		System.out.println("3 - Pesquisar pela posição");
		System.out.println("4 - Listar todos");
		System.out.println("5 - Ativar / Inativar");
		System.out.println("0 - Sair");
		System.out.println("---------------------------------");
		System.out.print("Digite a opção desejada: ");
		opcaoDigitada = teclado.next();

		if (opcaoDigitada.equals("0")) {
			System.out.println(" Menu jogador fechado");
			break; // sai do loop
		} else if (opcaoDigitada.equals("1")) {
			cadastrarJogador();
		} else if (opcaoDigitada.equals("2")) {
			// implementar a opção para editar
		} else if (opcaoDigitada.equals("3")) {
			// implementar a opção para filtrar jogadores pela posição
		} else if (opcaoDigitada.equals("4")) {
			listarTodos();
		} else if (opcaoDigitada.equals("5")) {
			// implementar a opção para ativar / inativar jogador
		} else {
			System.out.println("Comando inválido!");
		}
	}
	teclado.close();
}

}

É que você não está gravando nada no arquivo, olha só:
escrever_no_arquivo.write("");
:man_shrugging:

package Model;

import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintWriter;

public class app {

private static List<Jogador> jogadores;

private static Scanner teclado;

public static void cadastrarJogador() throws IOException {

	// carregar arquivo de texto para arrylist

	System.out.println("Opção selecionada: Cadastrar Jogador");

	File arquivo = new File(
			"/Users/*******/Documents/Documentos Brendo/Unifacear/POO/Atividade jogador/Jogador cadastrado.txt");

	if (!arquivo.exists()) {
		arquivo.createNewFile();

	}

	FileWriter escrever_no_arquivo = new FileWriter(arquivo);

	// cria um novo jogador
	Jogador jogador = new Jogador();

	System.out.println( "Informe o nome: ");

	jogador.setNome(teclado.next());

	escrever_no_arquivo.flush();
	escrever_no_arquivo.write(jogador.getNome());

	System.out.println("Informe a posição: ");
	jogador.setPosicao(teclado.next());
	escrever_no_arquivo.flush();
	escrever_no_arquivo.write(jogador.getPosicao());

	System.out.println("Informe o número da camisa: ");
	jogador.setNumeroDaCamisa(Byte.parseByte(teclado.next()));
	escrever_no_arquivo.flush();
	escrever_no_arquivo.write(jogador.getNumeroDaCamisa());

	System.out.println("Informe o usuário: ");
	jogador.setUsuario(teclado.next());
	escrever_no_arquivo.flush();

	escrever_no_arquivo.write(jogador.getUsuario());

	System.out.println("Informe a senha: ");

	jogador.setSenha(teclado.next());
	escrever_no_arquivo.flush();
	escrever_no_arquivo.write(jogador.getSenha());

	System.out.println("Jogador criado com sucesso!");

	// adiciona jogador na lista
	jogadores.add(jogador);
	escrever_no_arquivo.close();
}

List<String> listPalavras = new ArrayList<>();

public static void listarTodos() throws IOException {
	System.out.println("Jogadores cadastrados:");

	FileInputStream stream = new FileInputStream(
			"/Users/******/Documents/Documentos Brendo/Unifacear/POO/Atividade jogador/Jogador cadastrado.txt");
	InputStreamReader reader = new InputStreamReader(stream);
	BufferedReader br = new BufferedReader(reader);
	String linha = br.readLine();

	System.out.println(linha);
	linha = br.readLine();

	for (Jogador jogador : jogadores) {
		System.out.println("");
		System.out.println("Nome....: " + jogador.getNome());
		System.out.println("Posição.: " + jogador.getPosicao());
		System.out.println("Camisa..: " + jogador.getNumeroDaCamisa());
		System.out.println("Usuário.: " + jogador.getUsuario());
		System.out.println("Senha...: " + jogador.getSenha());
		System.out.println("Situação: " + (jogador.isSituacao() ? "Ativo" : "Inativo"));
		System.out.println("");

	}
}

public static void main(String[] args) throws Exception {
	// instancia o teclado
	teclado = new Scanner(System.in);
	// instancia a lista de jogadores

	// trocar passar o metodo
	jogadores = new ArrayList<>();

	// variavel para verificar a opção selecionada do menu
	String opcaoDigitada = "";

	// loop infinito
	while (true) {
		System.out.println("---------------------------------");
		System.out.println("MENU JOGADOR");
		System.out.println("---------------------------------");
		System.out.println("1 - Cadastrar");
		System.out.println("2 - Editar");
		System.out.println("3 - Pesquisar pela posição");
		System.out.println("4 - Listar todos");
		System.out.println("5 - Ativar / Inativar");
		System.out.println("0 - Sair");
		System.out.println("---------------------------------");
		System.out.print("Digite a opção desejada: ");
		opcaoDigitada = teclado.next();

		if (opcaoDigitada.equals("0")) {
			System.out.println(" Menu jogador fechado");
			break; // sai do loop
		} else if (opcaoDigitada.equals("1")) {
			cadastrarJogador();
		} else if (opcaoDigitada.equals("2")) {
			// implementar a opção para editar
		} else if (opcaoDigitada.equals("3")) {
			// implementar a opção para filtrar jogadores pela posição
		} else if (opcaoDigitada.equals("4")) {
			listarTodos();
		} else if (opcaoDigitada.equals("5")) {
			// implementar a opção para ativar / inativar jogador
		} else {
			System.out.println("Comando inválido!");
		}
	}
	teclado.close();
}

}

alterei o codigo e deu certo só que ele ta salvando desse jeito brendoatacantebre123 tentei da quebra de linha e não consegui e o número da camisa não salva.

Ao invés de usar o FileWriter, utiliza o PrintWriter que aí você tem o método println.

Não fica chamando o flush o tempo todo, basta chamar uma única vez antes do close.

O close faz um flush automaticamente, então somente ele seria suficiente (ainda mais para um caso simples como esse).


@brendo_melo Na verdade, nem precisaria chamar close. Desde o Java 7 que podemos usar o try-with-resources, que fecha o arquivo automaticamente. E também não precisa verificar se o arquivo existe, porque o FileWriter já cria caso não exista:

// try-with-resources, fecha automaticamente o arquivo no final
try (FileWriter writer = new FileWriter("arquivo.txt")) {
    Jogador jogador = new Jogador();
    System.out.println("Informe o nome: ");
    jogador.setNome(teclado.nextLine());
    writer.write(jogador.getNome() + "\n"); // acrescenta a quebra de linha

    System.out.println("Informe a posição: ");
    jogador.setPosicao(teclado.nextLine());
    writer.write(jogador.getPosicao() + "\n");
    // etc
} catch (IOException e) {
    // erro, mostrar mensagem, etc
}

public void editarJogadores(Jogador jogador) {

		if (jogador == null) ;
	    boolean encontrou = false;

	    for (Jogador c : jogadores) {
	         if (c.getNome() == jogador.getNome()) {
	              // mesmo identificador, então atualiza os valores
	              c.setPosicao(jogador.getPosicao());
	              c.setNumeroDaCamisa(jogador.getNumeroDaCamisa());
	              c.setUsuario(jogador.getUsuario());
	              c.setSenha(jogador.getSenha());

	              encontrou = true;
	              break;
	         }
	    }

	    // Caso não encontrar pra atualizar, adiciona na lista como um novo (opcional)
	    if (!encontrou) {
			jogadores.add(jogador);
	    }
	}

public Jogador buscar( String posicao) {
	    
	     boolean naoFiltrarEmail = (posicao == null || posicao.trim().isEmpty());

	     for (Jogador c : jogadores) {
	          if 
	              (c.getPosicao().contains(posicao.trim())) {
	               return c;
	          }
	     }
	     return null; // não encontrou
	}

muito obrigado, eu creie uma clase para editar e outra para buscar e não deu certo o de buscar eu tentei filtar para as posições dos jogadores.

String se compara com o método equals e não com ==.