Java 将文本文件中的数据解析为多个数组,并从中创建工资单代码

Java 将文本文件中的数据解析为多个数组,并从中创建工资单代码,java,arrays,parsing,text,Java,Arrays,Parsing,Text,•创建工资单文件 •工资单文件包含人力资源和警察两个部门20名员工的小时工资信息。该文件将有两列浮点数。第一栏是人力资源,第二栏是警察局。所以每行有两个浮点数。 •您需要使用[0,100]中的随机数作为双精度类型创建工资单文件。 •读取工资单文件。 •您需要使用Scanner对象的nextLine()来读取工资单文件中的每一行。 •使用我们在课程中讨论过的splitString()函数,解析每一行以获得两个小时工资的数组。该函数将返回String[]类型。String和Character cla

•创建工资单文件
•工资单文件包含人力资源和警察两个部门20名员工的小时工资信息。该文件将有两列浮点数。第一栏是人力资源,第二栏是警察局。所以每行有两个浮点数。
•您需要使用[0,100]中的随机数作为双精度类型创建工资单文件。
•读取工资单文件。
•您需要使用Scanner对象的nextLine()来读取工资单文件中的每一行。
•使用我们在课程中讨论过的splitString()函数,解析每一行以获得两个小时工资的数组。该函数将返回String[]类型。String和Character class的函数将有助于解决splitString问题。
•计算每个部门的总薪酬和平均薪酬
•您需要使用Double.parseDouble()将字符串类型的付款转换为双精度类型
•编写一份包含总薪酬和平均薪酬的输出文件。
•输入文件名使用“pay.txt”,输出文件名使用“summary.txt”

现在我明白了如何在没有数组的情况下完成这项工作,因为我已经完成了。但是一旦我要将txt文件解析为多个数组,我就完全不知所措了。我的教授禁止我们使用in.hasNextDouble(),这是我解决上一个程序的方法。如果没有它,我如何将程序中txt文件中同一行上的两个数字分成两个不同的数组

这是上一个程序的代码,也是我目前使用当前程序的地方

public class FileHandling {
public static void main(String [] args) throws FileNotFoundException{
    File inputFileName = new File("input.txt");
    Scanner in = new Scanner(inputFileName);


    double averageWorker = 0;
    double averageHr = 0;

    double totalWorkerPay = 0;
    System.out.println("    HR\t\tWorkers");
    double totalHrPay = 0;
    while (in.hasNextDouble()) {
        double humanResourcesPay = in.nextDouble();
        System.out.printf("%8.3f\t", humanResourcesPay);
        totalHrPay += humanResourcesPay;



        double workerPay = in.nextDouble();
        System.out.printf("%.3f\n", workerPay);
        totalWorkerPay += workerPay;


        averageWorker = totalWorkerPay/3;
        averageHr = totalHrPay/3;


    }
    System.out.printf("Total pay for HR is %.1f", totalHrPay);
    System.out.printf("\nAverage pay for HR is %.1f", averageHr);
    System.out.printf("\nThe total pay for Workers is %.1f", totalWorkerPay);
    System.out.printf("\nAverage pay for Workers is %.1f", averageWorker);


    System.out.print("\nEnter the file name:");
    Scanner console = new Scanner(System.in);
    String outputFileName = console.nextLine();
    PrintWriter out = new PrintWriter(outputFileName);
    System.out.println("total is " + totalHrPay);

    in.close();
    out.close();

}






}
好的,这是我到目前为止关于这个家庭作业的内容

public class FileHandlingNextLine {


public static void main(String [] args) throws FileNotFoundException{
    File inputFileName = new File("pay.txt");
    Scanner in = new Scanner(inputFileName);
    int i = 0;
    int j = 0;

    double total[] = new double[2];
    while (in.hasNextLine()) {
        String line = in.nextLine();
        System.out.println("Line : " + line);
        String pays[] = splitString(line);
        for(i = 0; i < pays.length; i++) {
        System.out.printf(pays[i]);     

        total[i] += Double.parseDouble(pays[i]);

    }
    }

}
公共类文件处理下一行{
公共静态void main(字符串[]args)引发FileNotFoundException{
文件输入文件名=新文件(“pay.txt”);
扫描仪输入=新扫描仪(inputFileName);
int i=0;
int j=0;
双倍总额[]=新的双倍[2];
while(在.hasNextLine()中){
String line=in.nextLine();
System.out.println(“行:”+行);
字符串付款[]=拆分字符串(行);
对于(i=0;i<0.length;i++){
系统输出打印F(支付[i]);
总计[i]+=Double.parseDouble(支付[i]);
}
}
}

任何帮助都将不胜感激,我迷路了,我的老师几乎帮不上什么忙。

如果您不仅发布代码的当前状态,而且发布您的思维过程,您将得到更多帮助。您现在坚持什么?您对如何解决哪些问题有想法,您坚持哪些问题(到目前为止,您对如何解决这些问题有何想法)“所以,它的存在是为了帮助人们在自己尝试问题并陷入困境时进行学习,但对于任何帮助你的人来说,你需要展示你对问题的想法以及你陷入困境的地方。@蒂姆我知道我需要将字符串放入字符数组,逐个解析字符数组,并将数字放入两个子字符串中。不幸的是,我的professor在课堂上没有给我们太多的学习机会,所以大部分都是在课外学习的。我只是对这一点迷茫了。