Java读取txt文件读到的是String对象,调用String中的分割方法split(分割字符为:“,”),可以得到String数组,
时间: 2024-09-20 15:09:13 浏览: 36
在Java中,如果你已经读取了一个.txt文件并得到了一个`String`对象,你可以使用`split()`方法来根据特定的字符分割字符串。这个方法会按照指定的分隔符将字符串拆分成多个子字符串,并存储在一个`String[]`数组中。
例如,假设你有一个名为`fileContent`的`String`变量,它包含了从文本文件读取的内容,你可以这样做:
```java
String fileContent = "这是原始字符串, 包含逗号分割的数据";
String[] substrings = fileContent.split(",");
for (String substring : substrings) {
System.out.println(substring); // 打印每个子字符串
}
```
在这个例子中,`split(",")`会将`fileContent`按逗号分隔,结果是一个包含每个子字符串的新数组`substrings`。每一项都是原字符串中由逗号分隔的部分。
注意,`split()`不会改变原始的`String`对象,而是创建一个新的数组来存储分割后的结果。如果需要直接修改原始字符串,应谨慎操作,因为`String`类是不可变的。
相关问题
用Java实现2、文件内容如下(记录了三个学生信息),要求读取文件,将学生信息读取出来,并保存到集合中 张三,20,男,118班 李四,19,男,119班 王五,21,女,120班 字符串方法:split()分割,可以将一个字符串分割为字符串数组
可以使用Java的IO流来读取文件,并使用ArrayList集合来保存学生信息。以下是示例代码:
```java
import java.io.BufferedReader;
import java.io.FileReader;
import java.util.ArrayList;
public class StudentReader {
public static void main(String[] args) {
ArrayList<Student> students = readStudentsFromFile("students.txt");
System.out.println("学生信息如下:");
for (Student student : students) {
System.out.println(student);
}
}
public static ArrayList<Student> readStudentsFromFile(String filename) {
ArrayList<Student> students = new ArrayList<>();
try (BufferedReader reader = new BufferedReader(new FileReader(filename))) {
String line;
while ((line = reader.readLine()) != null) {
String[] parts = line.split(",");
String name = parts[0];
int age = Integer.parseInt(parts[1]);
String gender = parts[2];
String className = parts[3];
Student student = new Student(name, age, gender, className);
students.add(student);
}
} catch (Exception e) {
e.printStackTrace();
}
return students;
}
}
class Student {
private String name;
private int age;
private String gender;
private String className;
public Student(String name, int age, String gender, String className) {
this.name = name;
this.age = age;
this.gender = gender;
this.className = className;
}
public String getName() {
return name;
}
public int getAge() {
return age;
}
public String getGender() {
return gender;
}
public String getClassName() {
return className;
}
@Override
public String toString() {
return "姓名:" + name + ",年龄:" + age + ",性别:" + gender + ",班级:" + className;
}
}
```
上述代码中,readStudentsFromFile()方法用于读取文件并保存学生信息到ArrayList集合中。在方法中,使用BufferedReader类读取文件的每一行数据,然后使用split()方法将数据分割为字符串数组,再将数组中的各个元素转换为相应的属性值,并创建一个Student对象。最后,将Student对象添加到ArrayList集合中。
在main()方法中,调用readStudentsFromFile()方法读取文件并输出学生信息。
java 读取txt中的数据 以 , 分割并转换成对象集合
在Java中,要读取一个文本文件(假设为txt格式),并以逗号(,)分隔数据,然后转换成对象的集合,通常可以分为以下几个步骤:
1. 使用`FileInputStream`或`BufferedReader`等读取文件内容。
2. 读取到的内容按行读取,每行数据按逗号分隔符分割。
3. 分割后的字符串数组转换为所需对象的属性值。
4. 将每个对象添加到集合中,如`ArrayList`。
5. 封装这些步骤到方法中,便于重复调用。
下面是一个简单的代码示例,假定我们要读取的数据是一系列用户信息,每行数据代表一个用户的信息,字段分别为:姓名,年龄和邮箱地址。
```java
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
// 假设有一个User类,用于封装用户信息
class User {
private String name;
private int age;
private String email;
// 省略构造方法、getter和setter
public User(String name, int age, String email) {
this.name = name;
this.age = age;
this.email = email;
}
// 省略toString方法以便于打印查看
}
public class ReadFileToObject {
public static void main(String[] args) {
List<User> userList = readFileAndConvertToUsers("users.txt");
// 打印结果,验证转换是否成功
for (User user : userList) {
System.out.println(user);
}
}
public static List<User> readFileAndConvertToUsers(String filePath) {
List<User> userList = new ArrayList<>();
try (BufferedReader reader = new BufferedReader(new FileReader(filePath))) {
String line;
while ((line = reader.readLine()) != null) {
String[] userData = line.split(",");
if (userData.length == 3) {
String name = userData[0];
int age = Integer.parseInt(userData[1]);
String email = userData[2];
User user = new User(name, age, email);
userList.add(user);
}
}
} catch (IOException e) {
e.printStackTrace();
}
return userList;
}
}
```
在上述代码中,`readFileAndConvertToUsers`方法完成读取文件和转换对象的任务。首先,使用`BufferedReader`按行读取文件,然后使用`split`方法按逗号分割每行数据,最后将分割后的字符串数组转换为`User`对象并添加到`ArrayList`集合中。
阅读全文