Java 两个不同的文档,完成了一些东西,但现在它们是一个..希望它们分开

标签 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("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;  
    }

}

对,它的作用是打印出这个:

abcdefabcd123abcdz456aabcdd

这个结果实际上是两个单独的文档,text1.txttext2.txt在cmd上组合成一行。我需要的是对这两个文档进行标准化,然后将它们各自保存的每个值作为单独的元素打印出来,而不是作为一个整体打印出来,因为我需要将它们用作下一部分的 2 个单独的事物(或对象)我的代码。

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

最佳答案

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

您可以将结果存储在单独的数组中,或者您可以这样做以使它们分别打印在不同的行上:

            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();
            }

新的 println 将分隔每个条目。

关于Java 两个不同的文档,完成了一些东西,但现在它们是一个..希望它们分开,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22385040/

相关文章:

javascript - 如何在 Angular js中将数据放入 session 中

java - java中双引号出现时如何结束字符串

确保初始化所有 EAR 部件的 Java EE 方法

c++ - C++ 新手,使用 "=="的/字符串相等性问题

java - HTTP 状态 500 - 尝试从 Java 文件调用方法时出错

javascript - 如何创建单个对象并在其中推送多个 key 对值?

java - 以树形 View 的形式过滤 ArrayList 的数据

java - 无法使用 Spring Boot 将 ArrayList 中超过 2 个元素保存到 MySQL?

java - 在java中创建包含列表中的对象的对象,并且不允许同一个对象被使用两次

python - 使用 for 循环创建对象列表 (python)