como verificar arquivos na pasta

Ver o tópico anterior Ver o tópico seguinte Ir em baixo

como verificar arquivos na pasta

Mensagem por reddragon em Seg 09 Mar 2009, 20:35

galera eu tenho algumas duvidas sobre verificação de arquivos.

tenho um jogo e nesse jogo quero fazer um sistema de salve que ira ter vários salves e meus salves irão ter a estenção .jgs e queria saber se alguem sabe um jeito de identificar quantos e quais arquivos tem em outra ou mesma paste do jogo.

quero montar também nesse jogo um jeito do jogador colocar as musicas que ele quer ouvir e para isso quero saber um jeito de identificar as musicas que estão dentro da pasta do jogo ou em uma sub pasta e quero também um tutorial ou dicas de como fazer as musicas pausar dar play e também saber o tempo atual da musica em segundos.

e por ultimo irei trabalhar com arquivos ini em certos momentos eu ja sei como faze los e trabalhar com eles mas novamente quero saber um jeito de identificar quantos e quais existem dentro da pasta ou uma sub pasta.

acho que é só.

reddragon

Número de Mensagens : 267
Idade : 27
Data de inscrição : 19/03/2008
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   :
   :
   :

Voltar ao Topo Ir em baixo

Re: como verificar arquivos na pasta

Mensagem por Gusba em Seg 09 Mar 2009, 21:42

procure no help que encontra tudo que precisa, ja fiz algo semelhante uma vez

Gusba

Número de Mensagens : 1156
Idade : 21
Data de inscrição : 03/08/2008
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 1
   :
   :

http://www.ciganospictures.hd1.com.br

Voltar ao Topo Ir em baixo

Re: como verificar arquivos na pasta

Mensagem por RKNF1995 em Seg 09 Mar 2009, 21:50

tem algo tipo exist_file eu mechi com isso em quanto tava comessando o game builder de um olhada no help aposto ke la tem tudo xD

RKNF1995

Número de Mensagens : 1257
Idade : 21
Data de inscrição : 19/07/2008
Reputação : 6
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   :
   :
   :

http://www.rknf1995.blogspot.com

Voltar ao Topo Ir em baixo

Re: como verificar arquivos na pasta

Mensagem por CPinheiro em Ter 10 Mar 2009, 21:00

Quanto a questão das músicas, você pode tentar fazer o seguinte:

Create:
Código:

musica_que_devera_tocar=get_string("Digite o nome do arquivo da música (ex: arquivo.mp3)","");
if (file_exists(musica_que_devera_tocar)
{
musica=sound_add(musica_que_devera_tocar,true,true); //adiciona o som
sound_loop(musica);
}

Não testei o código, veja se está funcionando.

CPinheiro

Número de Mensagens : 1015
Idade : 20
Data de inscrição : 01/06/2008
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   :
   :
   :

http://supermariobrasileiro.blogspot.com

Voltar ao Topo Ir em baixo

Re: como verificar arquivos na pasta

Mensagem por Gusba em Ter 10 Mar 2009, 21:06

provavelmente ele quer que as musicas disponiveis apareçam em uma lista, acredito que usando ds_list funcione

Gusba

Número de Mensagens : 1156
Idade : 21
Data de inscrição : 03/08/2008
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 1
   :
   :

http://www.ciganospictures.hd1.com.br

Voltar ao Topo Ir em baixo

Re: como verificar arquivos na pasta

Mensagem por CPinheiro em Ter 10 Mar 2009, 21:25

Tipo, ele poderia fazer algo... assim:

Create:
Código:

global.array_musica=0
global.musica[0]=""
global.musica[1]=""
global.musica[2]=""
//E por aí vai, até chegar no total de músicas.

Evento para adicionar uma música nova:
Código:

global.musica[global.array_musica]=get_string("Digite o nome do arquivo da música (ex: arquivo.mp3)","");
if (file_exists(global.musica[global.array_musica]) && ! (global.array_musica<total_de_musicas_permitidas)
{
sound_add(global.musica[global.array_musica],true,true); //adiciona o som
global.array_musica+=1;
}
else
{
show_message("Erro ao adicionar música");
}

Draw:
Código:

for(i=0;i<total_de_musicas_permitidas;i+=1;)
{
draw_text(posicao_x,posicao_y+i*24,global.musica[i]);
}


Não testei, mas creio que irá funcionar. Ocorreria isto: iria ser desenhada uma lista de músicas na tela. O usuário poderia adicionar mais da forma que você desejar, está música apareceria na lista.

Teste aí, qualquer dúvida, poste.

CPinheiro

Número de Mensagens : 1015
Idade : 20
Data de inscrição : 01/06/2008
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   :
   :
   :

http://supermariobrasileiro.blogspot.com

Voltar ao Topo Ir em baixo

Re: como verificar arquivos na pasta

Mensagem por reddragon em Sex 20 Mar 2009, 16:14

Gusba escreveu:procure no help que encontra tudo que precisa, ja fiz algo semelhante uma vez

Gusba no help traduzido eu não achei nada e no em inglês eu teria de traduzir tudo pra achar pq não sei inglês

e obrigado a todos que me responderão mas talvez vocês não repararam em um detalhe eu não sei quais são os arquivos que quero carregar e vocês me passaram apenas modos de carregar arquivos que já sei o nome.

por exp crio uma pasta la musicas para o jogo e coloco la umas 10 musicas ai eu vou la e coloco mais uma e reinicio o jogo e agora tem 11 em vez de 10 musicas na lista do jogo.

reddragon

Número de Mensagens : 267
Idade : 27
Data de inscrição : 19/03/2008
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   :
   :
   :

Voltar ao Topo Ir em baixo

Re: como verificar arquivos na pasta

Mensagem por Gusba em Sex 20 Mar 2009, 16:17

cara, tem um comando la q retorna cada arquivo de uma pasta, é só contalos e ver qual deles tem a extensao . mp3 por exemplo

Gusba

Número de Mensagens : 1156
Idade : 21
Data de inscrição : 03/08/2008
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 1
   :
   :

http://www.ciganospictures.hd1.com.br

Voltar ao Topo Ir em baixo

Re: como verificar arquivos na pasta

Mensagem por reddragon em Sex 20 Mar 2009, 16:24

que tem eu sei mas vc sabe que comando é pq se sim me fala pq eu não sei

reddragon

Número de Mensagens : 267
Idade : 27
Data de inscrição : 19/03/2008
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   :
   :
   :

Voltar ao Topo Ir em baixo

Re: como verificar arquivos na pasta

Mensagem por Gusba em Sex 20 Mar 2009, 16:27

file_find_first(mask,attr) Returns the name of the first file that satisfies the mask and the attributes. If no such file exists, the empty string is returned. The mask can contain a path and can contain wildchars, for example 'C:\temp\*.doc'. The attributes give the additional files you want to see. (So the normal files are always returned when they satisfy the mask.) You can add up the following constants to see the type of files you want:

fa_readonly read-only files
fa_hidden hidden files
fa_sysfile system files
fa_volumeid volume-id files
fa_directory directories
fa_archive archived files

file_find_next() Returns the name of the next file that satisfies the previously given mask and the attributes. If no such file exists, the empty string is returned.
file_find_close() Must be called after handling all files to free memory.

Gusba

Número de Mensagens : 1156
Idade : 21
Data de inscrição : 03/08/2008
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 1
   :
   :

http://www.ciganospictures.hd1.com.br

Voltar ao Topo Ir em baixo

Re: como verificar arquivos na pasta

Mensagem por Borgo em Seg 06 Abr 2009, 16:20

eu estou criando um programa em que se cria provas e neste, ele detecta quantas provas (arquivos) existem e relaciona em alguns arrays... (tudo gravado em arquivos .ini que eu renomeio para .prv para "mascarar" dos curiosos rsrs)
Posto aqui embaixo a parte que faz isto, interprete e adapte às suas necessidades. Espero que ajude:


//conta provas (ou arquivos, substitua o .prv por .jgs)
qt_provas=0; //quantidade de provas (ou arquivos)
a=1;
while a<>0{
if a=1{
if file_find_first('*.prv',fa_archive)<>""{
qt_provas+=1; a+=1
}else{
a=0
}
}else{
if file_find_next()<>""{
qt_provas+=1; a+=1
}else{
a=0
}
}
}
file_find_close();


//esse abaixo é opcional, uso para carregar os dados do ini para a memória, nos arrays
//carrega nomes, datas e arquivos
draw_set_font(font0)
for (i=1;i<=qt_provas;i+=1){
if i=1{
a=file_find_first('*.prv',fa_archive);
}else{
a=file_find_next();
}
b=string(string_delete(a,string_length(a)-2,3)+"ini");
file_rename(a,b);
ini_open(b);
nm_prova[i]=string_over(ini_read_string("head","name","Sem nome"),tamanho_maximo_nm_prova);
nm_prova_complete[i]=ini_read_string("head","name","Sem nome");
dt_prova[i]=string_over(ini_read_string("head","date","01/01/01"),tamanho_maximo_dt_prova);
file_prova[i]=string_over(a,tamanho_maximo_file_prova);
file_prova_complete[i]=a;
ini_close();
file_rename(b,a);
}

use o file_find_first para especificar os atributos da procura e já encontrar o primeiro,
depois, use o find_next para encontrar os próximos.
Por fim, o file_find_close para encerrar a busca e retirar da memória os atributos informados no file_find_first.


EDIT: esqueci de avisar... essa função string_over é uma função que eu criei, pode ignorá-la/remove-la do código.

Se precisar de ajuda nisso, me informe...

Borgo

Número de Mensagens : 69
Idade : 29
Data de inscrição : 06/01/2009
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   :
   :
   :

http://www.neonerds.com.br

Voltar ao Topo Ir em baixo

Re: como verificar arquivos na pasta

Mensagem por reddragon em Qua 08 Abr 2009, 07:49

valeu Borgo eu tinha feito com oque a galera já tinha me passado o seguinte esquema:

http://www.mediafire.com/download.php?hyozkztzlth

mas o seu é interessante também pq ele faz a verificação de quantos tem antes de carrega eu vou estudar seu script e irei adapta lo para o meu tambem

reddragon

Número de Mensagens : 267
Idade : 27
Data de inscrição : 19/03/2008
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   :
   :
   :

Voltar ao Topo Ir em baixo

Re: como verificar arquivos na pasta

Mensagem por Borgo em Qua 08 Abr 2009, 13:03

Beleza.

Eu fiz desta forma para ficar mais rápido, e para que possam ler quantos arquivos quiser.

Exemplo de mal uso:

iremos criar um scripr que lê os arquivos(sem contar antes)
for (i=1i<=1000;i+=1)
beleza, mas se tiver mais que 1000 arquivos? não lerá...
podemos então aumentar para 10000000, mas isso também não é legal, se tivermos somente 3 arquivos por exemplo... ele lerá os três e o resto do loop não fará nada.

Agora imagine essa engine rodando em cada step por exemplo...

Por isso que ele conta primeiro, assim, ele se adapta a situação.

Borgo

Número de Mensagens : 69
Idade : 29
Data de inscrição : 06/01/2009
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   :
   :
   :

http://www.neonerds.com.br

Voltar ao Topo Ir em baixo

Re: como verificar arquivos na pasta

Mensagem por Gusba em Qua 08 Abr 2009, 16:21

é só larga um break quando nao tiver mais arquivos, dai ele sai do loop

ou fazer do melhor jeito q é oq eu faço:


Código:
array[0] = file_find_first("*.*",fa_archive);
for ( i = 1 ; 1 ; i += 1 ) {
    a = file_find_next();
    if (a == "") {
        break;
    }
    else {
        array[i] = file_find_next();
    }
}

Gusba

Número de Mensagens : 1156
Idade : 21
Data de inscrição : 03/08/2008
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 1
   :
   :

http://www.ciganospictures.hd1.com.br

Voltar ao Topo Ir em baixo

Re: como verificar arquivos na pasta

Mensagem por Borgo em Qui 09 Abr 2009, 10:01

Bom isso, vou implementar no meu programinha, obrigado...

Borgo

Número de Mensagens : 69
Idade : 29
Data de inscrição : 06/01/2009
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   :
   :
   :

http://www.neonerds.com.br

Voltar ao Topo Ir em baixo

Re: como verificar arquivos na pasta

Mensagem por reddragon em Qui 09 Abr 2009, 12:52

Gusba bem lembrado já resolve o problema de carregar um monte.

Borgo bom o seu também fica bom, mas o seu iria dar pau o seguinte: for muito grande leg e indexs muito grande pq arrays só chegam ate 32000.

reddragon

Número de Mensagens : 267
Idade : 27
Data de inscrição : 19/03/2008
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   :
   :
   :

Voltar ao Topo Ir em baixo

Re: como verificar arquivos na pasta

Mensagem por reddragon em Qui 09 Abr 2009, 20:07

galera a ultima versão de meu estudo

http://www.mediafire.com/download.php?t3mnihtjcz2

agradeço a todos que postaram nesse tópico para me ajudar

reddragon

Número de Mensagens : 267
Idade : 27
Data de inscrição : 19/03/2008
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   :
   :
   :

Voltar ao Topo Ir em baixo

Re: como verificar arquivos na pasta

Mensagem por Gusba em Qui 09 Abr 2009, 20:11

pegou meu codigo e colocou o codigo pro desenho, ta bom, mas aconselho depois disso usar akele comando pra finaliza a busca, pra limpa a memoria e pah, nao lembro o nome

Gusba

Número de Mensagens : 1156
Idade : 21
Data de inscrição : 03/08/2008
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 1
   :
   :

http://www.ciganospictures.hd1.com.br

Voltar ao Topo Ir em baixo

Re: como verificar arquivos na pasta

Mensagem por Conteúdo patrocinado Hoje à(s) 08:15


Conteúdo patrocinado


Voltar ao Topo Ir em baixo

Ver o tópico anterior Ver o tópico seguinte Voltar ao Topo

- Tópicos similares

 
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum