-1

読みづらくてすみません。スタックはコード行からスペースをトリミングしているように見え、インデントは表示されません。うーん。

これは問題なくコンソールに出力されました...

CGT\whgdata\whnvp33.txt   << EXPECTED OUTPUT (excerpt)
CGT\whgdata\whnvt30.txt
CGT\whgdata\whnvt31.txt
CGT\whgdata\whnvt32.txt
CGT\whgdata\whnvt33.txt
CGT\whgdef.txt
CGT\whgdhtml.txt
CGT\whibody.txt
etc....

...ハッシュテーブルをファイルに出力しようとするまで。その時点からgetFileListing、有効なシンボルとして認識されません。

FileListing2.java:17: error: cannot find symbol
        List<File> files = FileListing2.getFileListing(startingDirectory);
  symbol:   method getFileListing(File)
  location: class FileListing2
1 error

誰かが私が誤って/上書きしたものを発見するのを助けるために、2番目の目を貸してくれませんか. それは明らかなことだと確信しています。:\

import java.util.*;
import java.io.*;
import java.nio.*;
import java.nio.file.Path;
import java.nio.file.StandardOpenOption.*;
import java.nio.file.Paths;
//
public final class FileListing2 {
    public static void main(String... aArgs) {
//
    File startingDirectory= new File("CGT");
    File outputFile = new File("CGTOutput.txt");
    List<File> files = FileListing2.getFileListing(startingDirectory);
    OutputStream output = null;
    //
    for(File file : files )        {
       System.out.println(file);  //print filenames
    }
}
}
4

2 に答える 2

2

ええ、それは非常に明白なものです。あなたのクラスFileListing2にはメソッドが含まれていませんgetFileListing(File)。そして、それを呼び出そうとしている方法で、静的でなければなりません:

public final class FileListing2 {
    public static void main(String... aArgs) {
        //
        File startingDirectory= new File("CGT");
        File outputFile = new File("CGTOutput.txt");
        List<File> files = FileListing2.getFileListing(startingDirectory);
        OutputStream output = null;
        //
        for(File file : files ) {
            System.out.println(file);  //print filenames
        }
    }
    public static List<File> getFileListing(File f) {
    /* implementation */
    }
}
于 2012-05-01T11:47:52.927 に答える
2

あなたのコードが のために持っているすべてであるなら、 のためのメソッドFileListing2はなく、メソッドだけですgetFileListing()LileListing2main()

于 2012-05-01T11:48:10.010 に答える