Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/348.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java是两个不同的文档,完成了一些事情,但现在它们是一个了。。要分开吗_Java_Object_Arraylist_Text Files - Fatal编程技术网

Java是两个不同的文档,完成了一些事情,但现在它们是一个了。。要分开吗

Java是两个不同的文档,完成了一些事情,但现在它们是一个了。。要分开吗,java,object,arraylist,text-files,Java,Object,Arraylist,Text Files,下面是我所有的代码供大家看,我将在下面解释问题: import java.io.*; import java.util.*; public class Plagiarism { public static void main(String[] args) { Plagiarism myPlag = new Plagiarism(); if (args.length == 0) { System.out.println("E

下面是我所有的代码供大家看,我将在下面解释问题:

import java.io.*;
import java.util.*;

public class Plagiarism {

    public static void main(String[] args) {

        Plagiarism myPlag = new Plagiarism();

        if  (args.length == 0) {
            System.out.println("Error: No files input");
        }
        else if (args.length > 0) {
            try {
                for (int i = 0; i < args.length; i++) {
                    BufferedReader reader = new BufferedReader (new FileReader (args[i]));
                    List<String> foo = simplify(reader);
                        for (int j = 0; j < foo.size(); j++) {
                            System.out.print(foo.get(j));
                        }
                }
            }
            catch (Exception e) {
                System.err.println ("Error reading from file");
            }
        }
    }

    public static List<String> simplify(BufferedReader input) throws IOException {
        String line = null;
        List<String> myList = new ArrayList<String>();

        while ((line = input.readLine()) != null) {
            myList.add(line.replaceAll("[^a-zA-Z0-9]","").toLowerCase().trim());
        }
        return myList;  
    }

}
这个结果实际上是两个单独的文档,
text1.txt
text2.txt
在cmd上合并成一行。我需要的是将这两个文档标准化,然后将它们作为各自持有的每个值的单独元素打印出来,而不是作为一个整体打印出来,因为在代码的下一部分中,我需要将它们作为两个单独的东西(或对象)使用


希望这不是太令人困惑,你们聪明的人可以帮助我!提前谢谢

它被打印到一行中,因为您使用System.out.print(),如果您想用每个输出开始一行,您可以使用System.out.println()


但这只是产出的问题。在内部,您的列表中已经有分隔的数据,那么您的实际问题是什么呢?

它被打印到一行中,因为您使用System.out.print(),如果您想用每个输出开始一行,您可以使用System.out.println()


但这只是产出的问题。在内部,您的列表中已经分离了数据,那么您的实际问题是什么呢?

您只是在打印结果,因此当结果在循环中运行时,它将在一行上打印出来

您可以将结果存储在一个单独的数组中,也可以将结果打印在不同的行上:

            for (int i = 0; i < args.length; i++) {
                BufferedReader reader = new BufferedReader (new FileReader (args[i]));
                List<String> foo = simplify(reader);
                    for (int j = 0; j < foo.size(); j++) {
                        System.out.print(foo.get(j));
                    }
                System.out.println();
            }
for(int i=0;i

新的println将分隔每个条目。

您只是打印出结果,因此当它在循环中运行时,它将在一行上打印出所有结果

您可以将结果存储在一个单独的数组中,也可以将结果打印在不同的行上:

            for (int i = 0; i < args.length; i++) {
                BufferedReader reader = new BufferedReader (new FileReader (args[i]));
                List<String> foo = simplify(reader);
                    for (int j = 0; j < foo.size(); j++) {
                        System.out.print(foo.get(j));
                    }
                System.out.println();
            }
for(int i=0;i

新的println将分隔每个条目。

检查此条目将逐行打印数据

abcdefabcd123

ABCDZ456ABCDD

   public static void main(String[] args) {

    Plagiarism myPlag = new Plagiarism();

    if  (args.length == 0) {
        System.out.println("Error: No files input");
    }
    else if (args.length > 0) {
        try {
            for (int i = 0; i < args.length; i++) {
                BufferedReader reader = new BufferedReader (new FileReader (args[i]));
                List<String> foo = simplify(reader);
                    for (int j = 0; j < foo.size(); j++) {
                        System.out.print(foo.get(j));
                    }
                   System.out.println();
            }
        }
        catch (Exception e) {
            System.err.println ("Error reading from file");
        }
    }
}

public static List<String> simplify(BufferedReader input) throws IOException {
    String line = null;
    List<String> myList = new ArrayList<String>();

    while ((line = input.readLine()) != null) {
        myList.add(line.replaceAll("[^a-zA-Z0-9]","").toLowerCase().trim());
    }
    return myList;  
}
publicstaticvoidmain(字符串[]args){
剽窃myPlag=新剽窃();
如果(args.length==0){
System.out.println(“错误:没有文件输入”);
}
否则如果(args.length>0){
试一试{
对于(int i=0;i

}

检查此选项将逐行打印数据

abcdefabcd123

ABCDZ456ABCDD

   public static void main(String[] args) {

    Plagiarism myPlag = new Plagiarism();

    if  (args.length == 0) {
        System.out.println("Error: No files input");
    }
    else if (args.length > 0) {
        try {
            for (int i = 0; i < args.length; i++) {
                BufferedReader reader = new BufferedReader (new FileReader (args[i]));
                List<String> foo = simplify(reader);
                    for (int j = 0; j < foo.size(); j++) {
                        System.out.print(foo.get(j));
                    }
                   System.out.println();
            }
        }
        catch (Exception e) {
            System.err.println ("Error reading from file");
        }
    }
}

public static List<String> simplify(BufferedReader input) throws IOException {
    String line = null;
    List<String> myList = new ArrayList<String>();

    while ((line = input.readLine()) != null) {
        myList.add(line.replaceAll("[^a-zA-Z0-9]","").toLowerCase().trim());
    }
    return myList;  
}
publicstaticvoidmain(字符串[]args){
剽窃myPlag=新剽窃();
如果(args.length==0){
System.out.println(“错误:没有文件输入”);
}
否则如果(args.length>0){
试一试{
对于(int i=0;i

}

如果要将文件内容保存在两个不同的对象中,请执行以下操作

List<ArrayList<String>> files = new ArrayList<ArrayList<String>>();

for (int i = 0; i < args.length; i++) {
    BufferedReader reader = new BufferedReader (new FileReader (args[i]));
    files.add(simplify(reader));

    for(ArrayList<String> al : files)
    {
        for (int j = 0; j < al.size(); j++) {
            System.out.print(al.get(j));
        }
            System.out.println();
    }

}
List files=new ArrayList();
对于(int i=0;i
并将第二种方法更改为

public static ArrayList<String> simplify(BufferedReader input) throws IOException
公共静态ArrayList simplify(BufferedReader输入)引发IOException

如果要将文件内容保存在两个不同的对象中,请执行以下操作

List<ArrayList<String>> files = new ArrayList<ArrayList<String>>();

for (int i = 0; i < args.length; i++) {
    BufferedReader reader = new BufferedReader (new FileReader (args[i]));
    files.add(simplify(reader));

    for(ArrayList<String> al : files)
    {
        for (int j = 0; j < al.size(); j++) {
            System.out.print(al.get(j));
        }
            System.out.println();
    }

}
List files=new ArrayList();
对于(int i=0;i
并将第二种方法更改为

public static ArrayList<String> simplify(BufferedReader input) throws IOException
publicstaticarraylistsimplify(BufferedReader输入)抛出IO