Java 创建一个数组,用.txt元素填充它

Java 创建一个数组,用.txt元素填充它,java,arrays,file,file-io,Java,Arrays,File,File Io,我想创建一个数组,在读取.txt文件中的元素时填充它,格式如下: item1 item2 item3 因此最终结果必须是这样的数组: String[] myArray = {item1, item2, item3} 提前谢谢 在文件读取器上缠绕一个标签,以便轻松读取文件的每一行 将行存储在列表中(假设您不知道要阅读多少行) 使用toArray将列表转换为数组 简单实现: public static void main(String[] args) throws IOException {

我想创建一个数组,在读取.txt文件中的元素时填充它,格式如下:

item1
item2
item3
因此最终结果必须是这样的数组:

String[] myArray = {item1, item2, item3}
提前谢谢

  • 文件读取器
    上缠绕一个标签,以便轻松读取文件的每一行
  • 将行存储在
    列表中(假设您不知道要阅读多少行)
    
  • 使用
    toArray
    列表转换为数组
  • 简单实现:

    public static void main(String[] args) throws IOException {
        List<String> lines = new ArrayList<String>();
        BufferedReader reader = null;
        try {
            reader = new BufferedReader(new FileReader("file.txt"));
            String line = null;
            while ((line = reader.readLine()) != null) {
                lines.add(line);
            }
        } finally {
            reader.close();
        }
        String[] array = lines.toArray();
    }
    
    publicstaticvoidmain(字符串[]args)引发IOException{
    列表行=新的ArrayList();
    BufferedReader reader=null;
    试一试{
    reader=newbufferedreader(newfilereader(“file.txt”);
    字符串行=null;
    而((line=reader.readLine())!=null){
    行。添加(行);
    }
    }最后{
    reader.close();
    }
    String[]数组=lines.toArray();
    }
    
    这闻起来像是家庭作业。如果是的话,你应该重新阅读你的笔记,告诉我们你试过什么

    就个人而言,我会使用扫描仪(来自java.util)

    import java.io.*;
    导入java.util.*;
    公务舱弗兰基{
    公共静态void main(字符串[]args){
    Scanner sc=新扫描仪(新文件(“myfile.txt”);
    String[]items=新字符串[3];//如果不知道有多少,请使用ArrayList
    int i=0;
    while(sc.hasNextLine()&&i
    看看这个答案。。。这够了吗?这正是我需要的!:)
    import java.io.*;
    import java.util.*;
    
    public class Franky {
        public static void main(String[] args) {
            Scanner sc = new Scanner(new File("myfile.txt"));
            String[] items = new String[3]; // use ArrayList if you don't know how many
            int i = 0;
            while(sc.hasNextLine() && i < items.length) {
                items[i] = sc.nextLine();
                i++;
            }
        }
    
    }