簡體   English   中英

為什么只顯示數組的最后一個元素?

[英]Why displays only last element of array?

我正在閱讀txt文件


antonio;alex antonio;antonio@mail.com

griez;Antuan Griezmann;griez@google.com

trump;Donald Trump;trump@google.com

用那個方法

 public  String getInput(String fileName) {
        StringBuilder sb = new StringBuilder();
        try {
            Scanner scanner = new Scanner(new File(fileName), "UTF-8");
            while (scanner.hasNextLine()) {
                sb.append(scanner.nextLine()).append(System.lineSeparator());
            }
            scanner.close();
            return sb.toString().trim();
        } catch (IOException ex) {
            ex.printStackTrace();
        }
        return sb.toString();
    }

然后我嘗試使用正則表達式“\ n”拆分輸入數據

public String [] arrSplit(String input){
        return input.split("\n");
    }

我只得到控制台中的最后一個元素

我的輸出

我正在運行的主要方法

  String text = util.getInput("text.txt");

        Ts test = new Ts();
        System.out.println(Arrays.toString(test.arrSplit(text)));

字符串相同但輸出不同

要正確拆分正則表達式,您應該使用split("\\n")甚至更好的split("\\r?\\n"); 這將與不同的行分隔符一起使用。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM