Java 将输入中的字符串解析为参数问题

Java 将输入中的字符串解析为参数问题,java,string,file,unix,Java,String,File,Unix,我想在我用unix编写的java程序中添加更多命令,但在传递参数时遇到了问题。我之前只是在unix中输入命令,并将文本文件作为程序参数,它工作得很好,但我想请求输入。我试图自己修复它,但对java有点陌生 我有 public static void main(String[] args) { String input = args[0]; /// String count = args[1]; File ne

我想在我用unix编写的java程序中添加更多命令,但在传递参数时遇到了问题。我之前只是在unix中输入命令,并将文本文件作为程序参数,它工作得很好,但我想请求输入。我试图自己修复它,但对java有点陌生

我有

     public static void main(String[] args) 
    {
        String input = args[0];
        ///
        String count = args[1];  
        File newF = new File(input); //
        StartProcess start = new StartProcess(input, Integer.parseInt(count));   //begin 

    }
效果很好,然后尝试了这个,但失败了

 public static void main(String[] args) 
    {
    //String inputFile = args[0]; //read the input file
    Scanner scanner = new Scanner(new InputStreamReader(System.in));
    System.out.println("Please enter file");
    String input = scanner.nextLine();

    System.out.println("Please enter number");
    int count = scanner.nextInt();
    //String interruptCounter = args[1];  //read the interrupt value
    File newFile = new File(input); //create a new file with the input file
    StartProcess being = new StartProcess(input, Integer.parseInt(count));   //begin 

}
所以我犯了这些错误

java:24:错误:不兼容的类型 int count=scanner.nextLine; ^ 必填项:int 找到:字符串 java:27:错误:找不到适合ParseInt的方法 StartProcess being=新的StartProcess输入,Integer.parseIntcount//开始运行进程 ^ 方法Integer.parseIntString不适用 无法通过方法调用转换将实际参数int转换为字符串 方法Integer.parseIntString,int不适用 实际参数列表和形式参数列表的长度不同 2个错误计数已经是一个整数-无需解析变量

StartProcess being = new StartProcess(input, count);
此方法nextLine返回一个字符串,而不是整数

你可能想用这个来代替

int count = scanner.nextInt();

您将输入作为字符串,更改为整数,它应该可以工作。

您正在重新发明轮子。请改用任何标准库,例如..

谢谢,但这只修复了其中一个错误,我仍然会收到以下错误:java:24:error:compatible types int count=scanner.nextLine;^必需:int found:String 1错误,与第二个列表中的错误不同-将其切换回int count=scanner.nextInt;编译错误似乎与粘贴的代码无关。我认为代码应该可以编译。