Kinhas 0 Denunciar post Postado Abril 18, 2011 Bom dia a todos, estou novamente postando uma dúvida, pois não consegui resolver o problema, a mais ou menos 1 ~~ 2 semas atraz eu postei um dúvida aqui, mas não consegui resolve-la ainda, pois bem lá vai. Eu não estou conseguindo fazer o meu programa ler todos os arquivos e pastas de um diretório, ele apenas lê umas 2 sub pastas acredito eu, não sei mais o que fazer, estou totalmente perdido, alguém poderia me dar uma luz? Obrigdo, Lucas Compartilhar este post Link para o post Compartilhar em outros sites
Ivan.Teles 23 Denunciar post Postado Abril 18, 2011 Caro kinhas, eu testei seu código do outro posto e o mesmo funciona 100%. da uma olhada nesse PDF, na parte de diretórios: http://www.microbion.co.uk/developers/C%20directory%20listing.pdf Compartilhar este post Link para o post Compartilhar em outros sites
eriva_br 7 Denunciar post Postado Abril 18, 2011 essa função faz isso, percorre todos os arquivos e diretórios, é só adaptar para a sua rotina public void DisplayDriveDirectories(string drivePath) { if (Directory.Exists(drivePath)) { foreach (String dirPath in Directory.GetDirectories(drivePath)) DisplayDriveDirectories(dirPath); DirectoryInfo dir = new DirectoryInfo(drivePath); int numFiles = dir.GetFiles().Length; foreach (FileInfo file in dir.GetFiles()) Response.Output.WriteLine("<br>{0} file.", file.FullName); Response.Output.WriteLine("<br>{0} : {1} files.", drivePath, numFiles); } } Compartilhar este post Link para o post Compartilhar em outros sites
Kinhas 0 Denunciar post Postado Abril 18, 2011 Bom dia Ivan, Bom, eu dei uma lida no PDF, porém aqui está dandno um erro, acredito que seja um erro por eu não saber como usar. está dandno erro no ArrayList public ArrayList ShowFiles() { // lists all the files in a folder ArrayList alFiles = new ArrayList(); foreach (FileInfo f in m_dir.GetFiles("*.*")) { alFiles.Add(f.Name); } return alFiles; } public ArrayList ShowFolders() { // lists all sub-folders in a folder ArrayList alFolders = new ArrayList(); foreach (DirectoryInfo dinfo in m_dir.GetDirectories("*.*")) { alFolders.Add(dinfo.FullName); } return alFolders; } São 5 erros: Error 1 Expected class, delegate, enum, interface, or struct Error 2 Expected class, delegate, enum, interface, or struct Error 3 Expected class, delegate, enum, interface, or struct Error 4 Expected class, delegate, enum, interface, or struct Error 5 Type or namespace definition, or end-of-file expected eriva_br, obrigado pelo código está rodando sim, agora preciso datr uma editada para fazer o que eu preciso, obrigado. eriva_br, desculpe mas eu não estou conseguindo pegar a extensão do arquivo em string, você poderia em dar um help, ou mesmo o Ivan, esses erros de não poder converter são complicados, vocês sabem o que posso fazer? Compartilhar este post Link para o post Compartilhar em outros sites
Ivan.Teles 23 Denunciar post Postado Abril 18, 2011 No caso de uma string use SubString. ou utilize este método para facilitar. private string Getextension(string fileName) { string ext = string.Empty; Boolean hita = false; int i = fileName.Length - 1; char[] arr = fileName.ToCharArray(); while(i>0 & !hita) { if (arr[i] == '.') hita = true; else ext = arr[i] + ext; i = i - 1; } return ext; } Compartilhar este post Link para o post Compartilhar em outros sites
Kinhas 0 Denunciar post Postado Abril 18, 2011 Ivan, não da pra utilizar esse método, porque o Getextension está recebendo uma string por parâmetro, porém não é uma string que está sendo mandada. Error 1 The best overloaded method match for 'CA_Listar_Diretorio.Program.Getextension(string)' has some invalid arguments Error 2 Argument '1': cannot convert from 'System.IO.FileInfo' to 'string' Compartilhar este post Link para o post Compartilhar em outros sites
Ivan.Teles 23 Denunciar post Postado Abril 18, 2011 Mas cara, você que tem que passar uma string pra ele, para que não gere erro. Compartilhar este post Link para o post Compartilhar em outros sites
Kinhas 0 Denunciar post Postado Abril 18, 2011 O Ivan consegui aqui, mas não usei o método que você criou ai, eu sou muito desesperado por ajuda isso é um ponto negativo em mim, mas eu consegui agora, eu esqueço que o C# tem muitos recursos, pra eu pegar a variável como se fosse string é só colocar variável.Name. Agora consegui quase completart o que eu queria, falta só fazer uns ajustes, muito obrigado pela ajuda de ambos Ivan.Teles e eriva_br. Quando precisarem, se precisarem estarei disposto a ajudar =D Compartilhar este post Link para o post Compartilhar em outros sites