Criando Arquivo

Olá pessoal…

Estou tentando criar um arquivo e como sou bem iniciante estou tento algumas dificuldades neste código abaixo:

public boolean [b]createNewFile/b {

try { 
	File file = new File("c:/temp/dolar.csv");
	  //Criando arquivo caso ele não exista
      
	boolean sucesso = file.createNewFile();
	 //Arquivo não existia e foi criado
	
	if (sucesso){
    } else { //Arquivo já existe
	}
	
}catch (IOException e) {	
}

esta dando erro “createNewFile” em negrito, o que será que estou fazendo de errado? ou será que o código interio esta errado?

Valeu pela ajuda

Flavio

:scrambleup: O que é que você quer fazer, afinal? Criar um arquivo e depois fazer o que com ele? E… Que erro está dando?? Copia ele pra cá…

No momento eu estou querendo apenas criar um arquivo, estão me passando por partes este programa, olha o erro que esta dando:

Error This method must return a result of type boolean

Outra pergunta amigo, como eu sei neste meu código se foi criado com sucesso?

Valeu

cara você declarou seu método assim:

public boolean createNewFile

Fazendo isso, está declarando pra quem chamar este método, que ele retornará ‘true’ ou ‘false’. Mas não é isso que você tá fazendo hehe

Cara, se não for pedir muito me explicado com mais detalhes, estou meio perdido!!!

Strider,o que o LIPE quis dizer é q vc disse q no seu metodo retornará um booleano e isso não ocorre!!!Mude para void…ou faça-o retornar esse boolean!

Sem querer ser chato mais já sendo, tem como vc me dar um exemplo?
Sei que deve ser um saco ficar respondendo essas coisas básica, mas é que estou começando agora, e vc sabe tudo no começo é difícil.

Valeu

:scrambleup: Olha, Strider, peguei seu código e fiz umas pequenas mudanças (marcados com dois asteriscos antes).

[code]public boolean createNewFile() {

try {
File file = new File(“c:/temp/dolar.csv”);
//Criando arquivo caso ele não exista

boolean sucesso = file.createNewFile();
//Arquivo não existia e foi criado

if (sucesso){
} else { //Arquivo já existe
}

}catch (IOException e) {
**return false;
}
**return true;
} [/code]

Deste modo, qualquer um que chamar este método vai receber um boolean como retorno e assim saberá se tudo funcionou ou não…

:arrow: Por favor, entenda: NÃO ponha os asteriscos no seu código… Só os pus para melhor compreensão…

Tá aqui um trecho de código que chama seu método e vê se foi tudo OK:

boolean sucess = createNewFile();
if(sucess){
  System.out.println("OK!");
}
else{
  System.out.println("Falha...");
}

Ok?

Cara ficou show, mas com este código eu consigo criar um arquivo ou ainda falta alguma coisa?

:scrambleup: Você cria um arquivo com esse nome/caminho: c:/temp/dolar.csv e sem absolutamente nada dentro, até onde eu sei… Se falta alguma coisa? Falta enchê-lo, que é o mais importante… Mas… Se por acaso, você fosse enchê-lo e ele ainda não tivesse sido criado, dependendo do jeito que você o enchesse (escrevesse nele), ele seria criado automaticamente… Então… Criar um arquivo é um passo meio que dispensável, não acha? :wink:

É que depois vou jogar algumas coisas nele, por enquanto preciso apenas criá-lo.
Meu o cara que trampa comigo falou que não esta certo, o return precisa retornar uma outra coisa sem ser false ou true, e agora?

Irmão deixa pra lá consegui hehehehe
Veja como ficou:

public boolean createNewFile() {

	try {
		File file = new File("c:/temp/dolar.csv");
		//Criando arquivo caso ele não exista 

		boolean sucesso = file.createNewFile();
		//Arquivo não existia e foi criado 

		if (sucesso) {
			System.out.println("OK!");

		} else { //Arquivo já existe 
			System.out.println("Falha, arquivo já existe");
		}
		return sucesso;
	} catch (IOException e) {
	}
	return false;
}

uma última pergutinha, como vc faz para colocar as mensagens dentro daquele quadradinho?

Valeu, valeu mesmo.

Strider leia isso:
http://www.guj.com.br/forum/viewtopic.php?t=62
que acabará com seus problemas em relação a arquivos…

Vc deve usar as tags que existem aí no painel a sua disposição qdo for inserir uma mensagem ou código…code,quote… por aí vai…
Passe o mouse em cima e veja!Não esqueça de fechá-las…/code,/quote … :wink:

Só mais uma coisa, pelo que vi neste código você está usando o boolean para retornar se deu erro ou não, é isto? Porquê se for o caso você está jogando fora algo que o Java oferece para este tipo de coisa os Exceptions…

Na minha opinião o certo seria o método retornar o arquivo que ele acaba de criar e caso o arquivo já exista ele dispara a excessão tacando um IOException, ou uma outra exception criada por você para este erro.

Será se não era isso que ele queria?

:scrambleup: Strider, olha isso:

:arrow: http://www.guj.com.br/user.article.get.chain?article.id=13&page=1

Pode ser útil pra você…

Para retornar a excessao, sua funcao deve fazer um throw da mesma…

Fica assim

function blalbalbal throws IOException{ //--implementacao }

valeu galera!! :smiley: