Ajuda com ARQUIVOem java

Preciso de ajuda pra grava os dados de um ArrrayList em um arquivo. O Programa até cria o arquivo, mas não grava dado nenhum.
Estou estudando java e arquivos é um assunto novo pra mim, tenho trabalho pra fazer e nele preciso grava os dados de programa em um arquivo.

public static void adicionarFuncionario(){

           String path = "arquivo.txt";
           
           FileWriter arq;
           
           try {
                arq = new FileWriter(path, true);
                
                PrintWriter gravar = new PrintWriter(arq);
                
                String nome, endereço, setor, login, senha;
                int matricula;
                Funcionario fcn;
                System.out.println(" ===> Adicionar Funcionario: <==== \n ");
                System.out.print(" Nome: ");
                nome = s.next();
                System.out.print(" endereço: ");
                endereço = s.next();
                System.out.print(" Setor: ");
                setor = s.next();
                System.out.print(" Crie um login: ");
                login = s.next();
                System.out.print(" Crie uma senha: ");
                senha = s.next();
                System.out.print(" Matricula: ");
                matricula = s.nextInt();
                
                fcn = new Funcionario(nome, endereço, setor, login, senha, matricula);
                rF.dataEntrada(fcn);
                System.out.println("Funcionario Adicionado!");
                System.out.println("Data de entrada: " + fcn.getDataEntrada());
                
                rF.addFuncionario(fcn);
                
                gravar.print(fcn);
                
            } catch (IOException e) {
                 e.printStackTrace();
            }
             
         }

Devmedia

amigo, der uma olhada nesse meu code que acabei de fazer para uma atividade, acho que deve ajuda vc.

https://pastebin.com/D9LaSh8m