Conectar-se
Quem está conectado
28 usuários online :: Nenhum usuário registrado, Nenhum Invisível e 28 Visitantes

Nenhum

Ver toda a lista


Compartilhe
Ver o tópico anteriorIr em baixoVer o tópico seguinte
avatar
Data de inscrição : 07/03/2010
Número de Mensagens : 1335
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 1

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuáriohttp://cai.na.tl/

[RESOLVIDO] Procurar arquivos em diferentes pastas

em Seg 29 Mar 2010, 18:06
Olá, gostaria de usar o file_find para pesquisar arquivos em diversas pastas, como no exemplo:

root\pasta1\arquivo1.ext

root\pasta2\arquivo2.ext

root\pasta3\arquivo3.ext


Eu gostaria de colocar o arquivo do jogo em \root e utilizar a função find para encontrar os três arquivos sem precisar do nome da pasta.

Existe algum jeito? Obrigado.


Última edição por Cainã em Qua 31 Mar 2010, 17:43, editado 1 vez(es)
avatar
Data de inscrição : 07/03/2010
Número de Mensagens : 1335
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 1

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuáriohttp://cai.na.tl/

Re: [RESOLVIDO] Procurar arquivos em diferentes pastas

em Ter 30 Mar 2010, 13:12
Desculpem o 2x post mas estou precisando disso urgente, alguem pode me ajudar?
avatar
Ranking : Nota B
Notas recebidas : B-C-A-C
Data de inscrição : 18/09/2008
Número de Mensagens : 2490
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 1 Insignia 3x 0
Reputação : 52

Prêmios
   : 0
   : 2
   : 1
Ver perfil do usuáriohttp://xcreatorgames.weebly.com/

Re: [RESOLVIDO] Procurar arquivos em diferentes pastas

em Ter 30 Mar 2010, 13:33
Cainã escreveu:Desculpem o 2x post mas estou precisando disso urgente, alguem pode me ajudar?

Cainã, isso não é justificativa para post duplo, basta aguardar que alguem geralmente sempre ajuda. Tenha mais pasciência blz??

Quanto ao seu problema, voce tem que fazer uma pesquisa recursiva nas pastas a partir do ponto de inicio. O método recursivo geralmente é usado neste tipo de procura de pastas. Tenha cuidado apenas ao fazer a rotina pois, se não tiver um ponto de saida bem definido trava as 4 rodas do micro pois estoura a pilha rapidamente.
Se vc realmente não souber fazer e estiver precisando mesmo, posso fazer um script pra voce.
avatar
Data de inscrição : 07/03/2010
Número de Mensagens : 1335
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 1

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuáriohttp://cai.na.tl/

Re: [RESOLVIDO] Procurar arquivos em diferentes pastas

em Ter 30 Mar 2010, 14:01
Então, desculpa mais uma vez pleo post duplo.

Eu gostaria de colocar o arquivo do meu jogo em uma pasta qualquer e encontrar todos os arquivos com dada extensão não só na pasta onde o arquivo está mas tambem em subpastas.

Valeu!
avatar
Ranking : Nota B
Notas recebidas : B-C-A-C
Data de inscrição : 18/09/2008
Número de Mensagens : 2490
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 1 Insignia 3x 0
Reputação : 52

Prêmios
   : 0
   : 2
   : 1
Ver perfil do usuáriohttp://xcreatorgames.weebly.com/

Re: [RESOLVIDO] Procurar arquivos em diferentes pastas

em Ter 30 Mar 2010, 15:21
Olha so amigo, fiz um script pra voce poder utilizar. Crie um script chamado acha_arquivo e coloque o codigo abaixo :

var file, path, txt;
path := argument0;
file := argument1;
execute_program('cmd.exe', '/c where /R ' + path + ' ' + file + ' >temp.txt', true);
txt := file_text_open_read('temp.txt');
linha := file_text_read_string(txt);
file_text_close(txt);
return (linha);

Código:

Depois é so chamar assim:
local := acha_arquivo('c:\', 'meuarquivo.bmp');
show_message(local);
avatar
Data de inscrição : 07/03/2010
Número de Mensagens : 1335
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 1

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuáriohttp://cai.na.tl/

Re: [RESOLVIDO] Procurar arquivos em diferentes pastas

em Ter 30 Mar 2010, 15:32
Entendi, você fez por bat, vou testar do seu jeito tambem mas acabei de descobrir o que acontecia quando eu tentava procurar uma pasta.

Quando você faz file_find_first('*',fa_directory); ele vai retribuir a primeira pasta que encontrar. No sistema do Windows a primeira pasta é SEMPRE a pasta "." que indica a pasta atual. A segunda é a pasta ".." que indica o nível inferior. Deste modo é necessário repetir mais duas vezes o file_find (file_find_next) para ele retribuir o primeiro valor de pasta real.

É só digitar "dir" no CMD para descobrir isso. ;)
avatar
Data de inscrição : 07/03/2010
Número de Mensagens : 1335
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 1

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuáriohttp://cai.na.tl/

Re: [RESOLVIDO] Procurar arquivos em diferentes pastas

em Qua 31 Mar 2010, 14:51
Então, eu criei esse sistema para ele encontrar todas as pastas de um dado local e a todas que ele encontrar formar uma variável com índice. O problema é que ele cria um loop infinito e da erro por que o index não pode ser maior que 32000.

Código:
d=0
dir[0]='';
path=global.folder+'\';

file_find_first(global.folder+'\*',fa_directory);  // dir "."
file_find_next();  // dir ".."

keep=true

while(keep=true){
file=file_find_next();

if file_exists(path+file) or directory_exists(path+file){

if file_attributes(path+file,fa_directory){
d+=1
dir[d]=path+file;
keep=true;
}
}

else{
keep=false;
}
}

Alguem sabe o que pode estar acontecendo?
avatar
Data de inscrição : 07/03/2010
Número de Mensagens : 1335
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 1

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuáriohttp://cai.na.tl/

Re: [RESOLVIDO] Procurar arquivos em diferentes pastas

em Qua 31 Mar 2010, 17:44
Podem fechar o tópico, ja consegui!
Ver o tópico anteriorVoltar ao TopoVer o tópico seguinte
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum