スキャナーでユーザー入力を取得しようとしましたが、ユーザーがEnterキーを押した場合、次の入力ステートメントに進みます。しかし、それは一度にすべて印刷されます。
public class MainRDS
{
public static void main(String[] args)
{
Scanner in = new Scanner(System.in);
String path;
String name;
String ext;
String date;
System.out.println("Directory search by path, name, extension, content and date.");
System.out.print("\nEnter Starting directory for the search (link c:"+"\\"+"temp) : ");
path = in.next();
System.out.print("\nEnter the file name (like myFile or enter for all) : ");
if((name = in.nextLine()).length() > 0)
System.out.print("\nEnter the file extenstion (like txt or enter for all) : ");
if((ext = in.nextLine()).length() > 0)
System.out.print("\nEnter last modified date (like 11/21/2012 or enter for any) : ");
date = in.nextLine();
}
}
出力:
Directory search by path, name, extension, content and date.
Enter Starting directory for the search (link c:\temp) : c:
Enter the file name (like myFile or enter for all) : myfile
Enter last modified date (like 11/21/2012 or enter for any) :
必要な出力:
Directory search by path, name, extension, content and date.
Enter starting directory for the search (like c:\temp): c:\temp
Enter the file name (like myFile or enter for all):
Enter the file extension (like txt or enter for all): txt
Enter content to search for (like comp121 or enter for any):
Enter last modified date (like 11/21/2013 or enter for any): 11/1/2011