Arquivo gerado no ubuntu e nao no windows

Boa noite

Criei uma aplicação que salva em .txt o texto de um jtextArea, roda normal no ubuntu, mas no windows ele nao gera o arquivo.

Alguem ja passo por isso ?

qual o caminho que você mandou ele gerar o arquivo?
lembre que a nomeação de unidades é diferente no windows e no Linux.

Bom dia Elizeu_Santos

Utilizo a classe Jfilechooser, é ela q me permite escolher um local pra salvar o arquivo.

verifica se ele está gerando alguma exceção.

Mas os arquivos são gerados em qualquer SO.

Digo isso porque pode ser por exemplo permissão.

Cara eu desenvolvo em ambiente linux e funciona perfeitamente em Windows…

Faça como o colega acima falou, verifique se ele nao esta gerando nenhuma exceção…

[]'s

Não, nao gera nenhuma exceção, ele simplesmente nao faz nada qdo indico um diretorio para salvar

O arquivo é gerado normalmente em ambiente linux só em windows que não.

Onde pode estar ocorrendo o erro ?

Cara… muito estranho… independente do SO, o arquivo deveria ser gerado…

posta ai como vc ta salvando esse arquivo…

[]'s

public void salvaArquivo(JTextComponent texto) throws IOException {

	JFileChooser salvandoArquivo = new JFileChooser();
	int resultado = salvandoArquivo.showSaveDialog(null);

	FileFilter filefilter = new FileNameExtensionFilter("Arquivo txt",
			".txt");
	salvandoArquivo.addChoosableFileFilter(filefilter);
	if (resultado == JFileChooser.APPROVE_OPTION) {

		File salvarArquivoEscolhido = salvandoArquivo.getSelectedFile();
		this.salvaArquivo = salvarArquivoEscolhido;

		if (salvarArquivoEscolhido.exists() == true) {

			int selecionaOpcao = JOptionPane.showConfirmDialog(null,
					" O arquivo já existe, deseja sobrescreve-lo? ", null,
					JOptionPane.OK_CANCEL_OPTION);
			if (selecionaOpcao == JOptionPane.OK_OPTION) {

				FileWriter filewriter = new FileWriter(salvaArquivo);
				PrintWriter pw = new PrintWriter(filewriter);
				pw.println(texto.getText());
				pw.close();

			}

		} else {
			FileWriter filewriter = new FileWriter(salvaArquivo);
			PrintWriter pw = new PrintWriter(filewriter);
			pw.println(texto.getText());
			pw.close();
		}

	}
}

public void salvaArquivo(JTextComponent texto) throws IOException {

	JFileChooser salvandoArquivo = new JFileChooser();
	int resultado = salvandoArquivo.showSaveDialog(null);

	FileFilter filefilter = new FileNameExtensionFilter("Arquivo txt",
			".txt");
	salvandoArquivo.addChoosableFileFilter(filefilter);
	if (resultado == JFileChooser.APPROVE_OPTION) {

		File salvarArquivoEscolhido = salvandoArquivo.getSelectedFile();
		this.salvaArquivo = salvarArquivoEscolhido;

		if (salvarArquivoEscolhido.exists() == true) {

			int selecionaOpcao = JOptionPane.showConfirmDialog(null,
					" O arquivo já existe, deseja sobrescreve-lo? ", null,
					JOptionPane.OK_CANCEL_OPTION);
			if (selecionaOpcao == JOptionPane.OK_OPTION) {

				FileWriter filewriter = new FileWriter(salvaArquivo);
				PrintWriter pw = new PrintWriter(filewriter);
				pw.println(texto.getText());
				pw.close();

			}

		} else {
			FileWriter filewriter = new FileWriter(salvaArquivo);
			PrintWriter pw = new PrintWriter(filewriter);
			pw.println(texto.getText());
			pw.close();
		}

	}
}

cara faz um favor, posta pra nós o que esse metodo te retorna:


System.out.println(salvandoArquivo.getSelectedFile());

[]'s

Retorna o arquivo selecionado, certo ?

Sim mas ele retorna somente o nome dele , ou o diretorio + nome?

[]'s

o diretorio + o nome.

Galera o que pode estar acontecendo java é multiplataforma o codigo é reconhecido em qualquer virtual machine