我如何使用Java来读取文件

时间:2015-11-04 16:28:17

标签: java file object youtube java.util.scanner

所以我有这段代码,我希望允许用户输入任意长度的字符串并加密代码。为了使这不仅仅是一个基本的项目,我认为有一个“保存”功能,用户可以在以后拾取。 问题出现在这里。我正在浏览Youtube并通过视频了解如何创建文件并写入文件。当我去读取文件(加载)的部分时,我看到我需要为文件中的每个字符创建一个变量。由于我不知道要制作多少变量,我被卡住了。
在他的代码中(我将显示它),他使用while循环遍历文件的内容并使用变量打印出其内容。我的代码如下:

import java.util.*;  
public class Sep {
    private Formatter x;
    public void openfile () {
        try {
            x = new Formatter("Gogo.txt");
        }
        catch (Exception e) {
            System.out.println("You have an error mate!!");
        }
    }
    public void addStuff() {
        x.format("%s%s%s%s", "Gogo will return!!", "Stronger than ever!!", "Faster than can be seen!!", "And he is out for blood...");
        }
    public void closeFile () {
        x.close();
    }
}

由于用户将输入他想要的任何内容,因此我没有关于要制作多少变量的血腥线索。 youtuber有这个:

import java.util.*;


public class Sep {
    private Formatter g;
    private Scanner x;
    public void openfile () {
        try {
            g = new Formatter("Gogo.txt");
            x = new Scanner(new File("gogo.txt"));
        }
        catch (Exception e) {
            System.out.println("You have an error mate!!");
        }
    }
    public void addStuff() {
        g.format("%s%s%s%s", "Gogo will return!!", "Stronger than ever!!", "Faster than can be seen!!", "And he is out for blood...");
        }
    public void readFile() {
        while(x.hasNext()) {
            String a = x.next();
            String b = x.next();
            String c = x.next();
            System.out.printf("%s %s %s\n", a,b,c);
        }
    public void closeFile () {
        x.close();
    }
}

1 个答案:

答案 0 :(得分:2)

您可以使用ArrayList:

ArrayList<String> al = new ArrayList<String>();
al.add(x.next);//this is in while loop

然后打印出ArrayList:

foreach(String s : al)
    System.out.printf("%s\n", s);