Using delimiter when reading a file

前端 未结 6 1015
执念已碎
执念已碎 2020-12-16 04:29

I have little experience using delimiters and i need to read a text file that stores several objects whose data is stored in single lines separate by commas (\",\"). The sep

6条回答
  •  感情败类
    2020-12-16 04:49

    All of the answers above are right and actually the same. However, one important point everybody should remember that the Scanner has a buffer size of only 1024. That means if the length of the delimited text is more, the parsing will stop.

    So, a little enhancement to the given solution, use BufferedReader instead of directly passing the file to the Scanner. Example:

        BufferedReader in = new BufferedReader(new FileReader("datafile.txt"), 16*1024);
        Scanner read = new Scanner(in);
        read.useDelimiter(",");
        String title, category, runningTime, year, price;
    
        while(read.hasNext())
        {
            title = read.next();
            category = read.next();
            runningTime = read.next();
            year = read.next();
            price = read.next();
            System.out.println(title + " " + category + " " + runningTime + " " + year + " " + price + "\n"); //just for debugging
        }
        read.close();
    

提交回复
热议问题