我如何阅读java

时间:2016-06-07 11:02:09

标签: java file-io bufferedreader filestream

我如何阅读 java

中的特定数据

新我在文件文字中编写用户名和密码 ID:用户名:密码

请问如何阅读这些数据?我的程序知道这是用户名和密码

2 个答案:

答案 0 :(得分:1)

如果我理解正确,最简单的方法是读取文本文件并将其解析为变量,如下所示:

BufferedReader br = new BufferedReader(new FileReader("file.txt"));
try {
    StringBuilder sb = new StringBuilder();
    String line = br.readLine();
    while (line != null) {
        sb.append(line);
        sb.append(System.lineSeparator());
        line = br.readLine();
    }
    String text= sb.toString();
    String parts = text.split(":")
    String id= parts[0]
    String username = parts[1]
    String pass = parts[2]
} finally {
    br.close();
}

答案 1 :(得分:0)

如果只有一个条目,你可以使用下面的代码,这与第一个答案非常相似,但没有StringBuilder的东西。

try {
    BufferedReader reader = new BufferedReader(new FileReader(new File("file.txt")));
    String line = reader.readLine();
    String[] parts = line.split(":");
    String id = parts[0];
    String username = parts[1];
    String password = parts[2];
    //Do stuff with it
}catch(IOException e){
    e.printStackTrace();
}

但是,如果有多个条目,则应使用NIO:

try{
    List<String> filecontents = Files.readAllLines(new File("file.txt"));
    for(int i = 0; i < filecontents.size(); i++){
        String line = filecontents.get(i);
        String[] parts = line.split(":");
        String id = parts[0];
        String username = parts[1];
        String password = parts[2];
        //Do stuff with it
    }
}catch(IOException e){
    e.printStackTrace();
}