public class parseFiles
{
public static void main(String... aArgs) throws FileNotFoundException
{
File startingDirectory= new File("CGT");
List<File> files = FileListing2.getFileListing(startingDirectory);
for(File file : files)
{
System.out.println(file);
}
}
<other methods to supply the file listings, etc.>
}
ここが私の現在のところです:これは素晴らしいことであり、フルパスのファイルリストは問題なくコンソールに出力されます。さて、私は、その出力にリストされている各ファイルを取り出し、行ごとに読みたいと思います。リストをJava入力ストリームに渡すにはどうすればよいですか?
BufferedReader br = new BufferedReader(new FileReader(file));
String inputLine;
String desc = "";
String docNo = "";
//
while ((inputLine = br.readLine()) != null)
{
int testVal=0;
String delim = ",";
int stringMax = inputLine.length();
if(inputLine.startsWith("Description"))
{desc = inputLine.substring(13,inputLine.length());}
else
if(inputLine.startsWith("Reference Number"))
{docNo = inputLine.substring(20,inputLine.length());}
String outputString = desc+delim+docNo;
//
<write series of output strings to flat file>
//
}
while ((inputLine = br.readLine()) != null)
次のエラーで戻って蹴り続ける:
FileListing2.java:22: error: unreported exception FileNotFoundException; must be
caught or declared to be thrown
List<File> files = FileListing2.getFileListing(startingDirectory);
^
FileListing2.java:30: error: unreported exception FileNotFoundException; must be
caught or declared to be thrown
BufferedReader br = new BufferedReader(new FileReader(file));
^
FileListing2.java:43: error: unreported exception IOException; must be caught or
declared to be thrown
while ((inputLine = br.readLine()) != null)
^
3 errors
@ DavidWallace-私が言ったように、私は作品が知っているものからコードをコピーしました。私はJavaのI/O初心者です。ファイルを1行ずつ解析したい場合は、FileではなくDataストリームが必要であることを思い出しています。それは間違った前提だと教えてください。 :) – dwwilson66
あなたはどういうことを言っていますか?これはあなたが投稿したコンパイラエラーです。それは例外ではありません!エラーメッセージを聞いて、あなたのメソッドで例外を宣言してください。 –
これは例外ではなく、コンパイルエラーです。例外をキャッチまたはスローする必要があります。これを理解できない場合は、[Exception Tutorial](http://docs.oracle.com/javase/tutorial/essential/exceptions/index.html)を参照してください。 –