簡體   English   中英

如何忽略 Java 中不能分成 3 列的行?

[英]How to ignore lines that cannot be split in 3 columns in Java?

我有一個這樣讀取的文件:

James#Smith#777-888
Lucas#Fisher#888-666
Marie#Holmes

我希望我的 Java 程序忽略不包含 3 個元素(姓名、姓氏、電話號碼)的行。 我找不到將這些信息集成到下面的代碼中的方法。 有什么想法嗎?

這是我的代碼:

import java.util.*;
import java.io.*;
public class Atzendaa 
{
    public static void main(String[] args) 
    {
        try
        {
            BufferedReader br = new BufferedReader(new FileReader("C:\\file.txt"));
          
            ArrayList <String> name = new ArrayList<String>();
            ArrayList <String> surname = new ArrayList<String>();
            ArrayList <String> phone = new ArrayList<String>();
            
            String line = br.readLine();
            while(line!=null)
            {
                String[] del = line.split("#");
                surname.add(del[0]);
                name.add(del[1]);
                phone.add(del[2]);
                line = br.readLine();
            }
            br.close(); 
            System.out.println(surname);
            System.out.println(name);
            System.out.println(phone);
        }
        catch(IOException ex)
        {
            System.out.println("Problem reading from file");
        }
    }

您必須添加一個 if 條件來檢查,

if (del.length == 3)

如果字符串數組長度為 3

while(line!=null)
    {
        String[] del = line.split("#");
        if (del.length == 3)
        {
            surname.add(del[0]);
            name.add(del[1]);
            phone.add(del[2]);
        }            
        line = br.readLine();
    }

暫無
暫無

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

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