Input-Output

2 respostas
J

Boa tarde amigos,

Neste momento estou estudando a manipulação de ficheiros e diretórios através do exemplo de código que peguei na revista [url]http://www.revista-programar.info/front/editions[/url] :
/* Manipulação de Ficheiros
* e Diretórios
*/
import java.io.*;

public class JavaFile
{
	public static void main(String[] args)
	{
		/* Criação do objeto File
		* inicializa a propriedade
		*/
		File file = new File("/estudo/teste/file.txt");
		
		// obtem nome do ficheiro ou diretório
		System.out.println(file.getName());
		
		/* método da permissão de leitura
		* a ficheiro ou diretório
		*/
		file.setReadOnly();

		/* método verifica se  o ficheiro
		* ou diretório está oculto
		*/
		System.out.println(file.isHidden());

		/* método verifica se é possível ler
		* o ficheiro ou diretório 
		*/
		System.out.println(file.canRead());
		
		/* método verifica se é possível escrever
		* no ficheiro ou diretório 
		*/
		System.out.println(file.canWrite());

		/* método da permissão de renomear ou mover
		* o ficheiro ou diretório
		*/
		file.renameTo(new File("/estudo/teste/Ficheiro.txt"));

		try
		{
			/* método verificar se o ficheiro
			* ou diretório existe no local
			*/
			if(!file.exists())
			{
				// método cria um novo ficheiro no local
				file.createNewFile();
			}
		}
		catch(Exception e)
		{
			System.out.println(e.getMessage());
		}

		// método verifica se o local é diretório
		if(file.isDirectory())
		{
			System.out.println("É um Diretório");
		}
		// método verifica se o local é ficheiro
		else if(file.isFile())
		{
			System.out.println("É um Ficheiro");
		}
		
		/* método retorna um array com todos os drives 
		* ou raízes do sistema operacional
		*/
		File[] roots = file.listRoots();
		for(int i = 0; i < roots.length(); i++)
		{
			System.out.println(roots[i]);
		}
		
		// método permite eliminar arquivo ou diretório do local
		file.delete();
	}
}
Mas está dando erro:
JavaFile.java:74: cannot find symbol                                                                                                        symbol  : method length()
location: class java.io.File[]
                for(int i = 0; i < roots.length(); i++)
                                        ^
1 error
Agradeço desde já,

Júnio César Silva

2 Respostas

T

roots é um array, que tem uma propriedade chamada length, não um método chamado length().

O código deveria ser:

for(int i = 0; i < roots.length; i++)
J

Muito obrigado pela colaboração Thingol, pois faltou atenção de minha parte.Paz e saúde para ti.

Criado 5 de fevereiro de 2009
Ultima resposta 5 de fev. de 2009
Respostas 2
Participantes 2