943,696 Members | Top Members by Rank

Ad:
  • Java Discussion Thread
  • Marked Solved
  • Views: 4538
  • Java RSS
You are currently viewing page 2 of this multi-page discussion thread; Jump to the first page
Jan 12th, 2009
0

Re: Recursive File List - Help me problem solve please

> but i dont think it has had any change in the list of results brought
> to the terminal window

And what were you expecting by checking if the file size is less than or equal to one byte?

Maybe posting/uploading a virtual directory structure along with the expected output might help others in collaborating for a better solution.
Super Moderator
Featured Poster
Reputation Points: 3233
Solved Threads: 719
Failure as a human
~s.o.s~ is offline Offline
8,871 posts
since Jun 2006
Jan 12th, 2009
0

Re: Recursive File List - Help me problem solve please

I'm fairly sure you meant "files.length" and not "f.length()".

Edit: Not that that matters though. Once the loop is done, the method will return anyway.
Last edited by masijade; Jan 12th, 2009 at 2:51 am.
Moderator
Reputation Points: 1471
Solved Threads: 490
Industrious Poster
masijade is offline Offline
4,043 posts
since Feb 2006
Jan 13th, 2009
0

Re: Recursive File List - Help me problem solve please

hello again i tried your advice erm no difference I think

I dont quite understand how not to make "the method not return anyway"

Please may someone help me to get files of the same size listed on screen or put into an array (both if possible).

Heres what ive tried so far, (also take a look at the commented out code)

Java Syntax (Toggle Plain Text)
  1. import java.io.*;
  2. import java.util.*;
  3.  
  4. public class scanner {
  5.  
  6. public static void main(String[] args) {
  7. for(File file : File.listRoots()){
  8. search(file);
  9. // duplicate(file);
  10. }
  11. }
  12.  
  13. public static void search(File f)
  14. {
  15. //if (!f.exists()) return;
  16. // String name = f.getName();
  17. // System.out.println(name);
  18. // if (duplicate(f)) System.out.println(f);
  19. if ( f.isDirectory() ) {
  20. File[] files = f.listFiles();
  21. //if (files.length == files.length) return; {
  22. for( int i = 0 ; i < files.length; i++ ) {
  23. if (files[i].length() == files[i].length()) {
  24. search( files[i] );
  25. //if (files[i].length() == files[i].length()) return;
  26. System.out.println(files[i]);
  27. } } } }
  28.  
  29.  
  30.  
  31. //public static void duplicate(File file)
  32. //{
  33.  
  34. //if (file.length() == file.length()) return;
  35. // }
  36. }

please please help..
Reputation Points: 10
Solved Threads: 0
Light Poster
caps_lock is offline Offline
43 posts
since Nov 2008
Jan 14th, 2009
0

Re: Recursive File List - Help me problem solve please

so just to add more detail because theyre may be confusion

Im basically trying to get files with equal file size first, then im trying to put those in an array, then the files in the array need to be compared possibily by length (bytes) (not file names but files contents), the comparison need to be made maybe by binary contents or by generating an MD checksum which ever ones easier.
Reputation Points: 10
Solved Threads: 0
Light Poster
caps_lock is offline Offline
43 posts
since Nov 2008
Jan 14th, 2009
1

Re: Recursive File List - Help me problem solve please

And I told you that sort of thing would be a lot more work. Good luck with that, we are not going to write it for you.

For arrays:
http://java.sun.com/docs/books/tutor...ts/arrays.html

For Collections (which would be better):
http://java.sun.com/docs/books/tutor...ons/index.html
Moderator
Reputation Points: 1471
Solved Threads: 490
Industrious Poster
masijade is offline Offline
4,043 posts
since Feb 2006
Jan 14th, 2009
0

Re: Recursive File List - Help me problem solve please

Click to Expand / Collapse  Quote originally posted by caps_lock ...
so just to add more detail because theyre may be confusion

Im basically trying to get files with equal file size first, then im trying to put those in an array, then the files in the array need to be compared possibily by length (bytes) (not file names but files contents), the comparison need to be made maybe by binary contents or by generating an MD checksum which ever ones easier.
Like it has already been mentioned by masijade, you have to make a stab at this and post again if you have any problems. Just putting in random conditional statements here and there won't cut in. Since you already seem to know the logic, you can at least try implementing it.
Super Moderator
Featured Poster
Reputation Points: 3233
Solved Threads: 719
Failure as a human
~s.o.s~ is offline Offline
8,871 posts
since Jun 2006
Jan 14th, 2009
0

Re: Recursive File List - Help me problem solve please

i just thought you guys would of liked a challenge lol

thanks anyways
Reputation Points: 10
Solved Threads: 0
Light Poster
caps_lock is offline Offline
43 posts
since Nov 2008
Jan 14th, 2009
1

Re: Recursive File List - Help me problem solve please

> i just thought you guys would of liked a challenge lol

I have got enough challenges in my daily life, I guess I'll just pass. :-)

But don't give up hope, who knows, masijade might just end up dropping in a jar file here with a "meh" look on his face. ;-)
Super Moderator
Featured Poster
Reputation Points: 3233
Solved Threads: 719
Failure as a human
~s.o.s~ is offline Offline
8,871 posts
since Jun 2006
Jan 14th, 2009
0

Re: Recursive File List - Help me problem solve please

why when i compile this code now i only get a list of folders and .sqm files and .log file and a .txt file and an .exe file. Ive got this list of files from d and c drive

Java Syntax (Toggle Plain Text)
  1. import java.io.*;
  2. import java.util.*;
  3. import java.*;
  4.  
  5. import java.io.*;
  6. import java.util.*;
  7.  
  8. public class DeleteSameFilesAttempt9x10 {
  9. public static void main(String[] args) {
  10. for(File file : File.listRoots()){
  11. search(file);
  12. }
  13. }
  14.  
  15.  
  16.  
  17. public static void search(File f) {
  18. if ( !f.exists() ) return;
  19. String name = f.getName();
  20. System.out.println(name);
  21. if ( f.isDirectory() ) {
  22. File[] files = f.listFiles();
  23. if (files != null) {
  24. for( int i = 0 ; i < files.length; i++ ) {
  25. samesize( files[i], files[i] ); {
  26.  
  27. System.out.println(files[i]);
  28.  
  29. }
  30.  
  31.  
  32.  
  33. }
  34. }
  35.  
  36. }
  37. }
  38.  
  39. public static void samesize (File filey, File filex) {
  40. if (filey != null) if (filex !=null)
  41. {
  42. if (filey.length() == filex.length()) return;
  43. String name1 = filey.getName();
  44. String name2 = filex.getName();
  45. System.out.println(name1 + name2);
  46. }
  47. }
  48. }
Reputation Points: 10
Solved Threads: 0
Light Poster
caps_lock is offline Offline
43 posts
since Nov 2008
Jan 14th, 2009
0

Re: Recursive File List - Help me problem solve please

I don't even understand what you mean by that question. Your code is only processing the top level of each root entry and only then if it's a directory.
Moderator
Featured Poster
Reputation Points: 3239
Solved Threads: 838
Posting Genius
Ezzaral is offline Offline
6,757 posts
since May 2007

This thread is solved

Either the thread starter or a moderator has marked this thread as solved. You can most likely trust the responses and answers given. There is most likely no reason for any further responses to be posted here. If you have a related question, please start a new thread in this forum instead.

This thread is more than three months old

No one has posted to this discussion for at least three months. Please let old threads die and do not reply to them unless you feel you have something new and valuable to contribute that absolutely must be added to make the discussion complete. Otherwise, please start a new thread in this forum instead.
Message:
Previous Thread in Java Forum Timeline: Requiring programs in java
Next Thread in Java Forum Timeline: very basic sun tutorial base question





About Us | Contact Us | Advertise | Acceptable Use Policy
Forum Index | Build Custom RSS Feed


Follow us on Twitter


© 2011 DaniWeb® LLC