从txt文件中读取数据生成对象

本文介绍如何利用JAVA的InputStream和InputStreamReader从txt文件读取数据,并通过正则表达式提取数字,进而生成对象。
摘要由CSDN通过智能技术生成


从txt文件中读取数据生成对象
txt文件内容如下:(数字与汉字之间是空格,所以算是较好处理的,如果是逗号的话,就要用其他的一些正则表达式来替换)
梅姨   175.0
诸葛亮   184.0
金刚  182.0
迈克尔杰克逊   180.0
拿破仑   159.5

String path="E:\\Coding\\workspace\\16树莓\\src\\book_7_1\\people.txt";
//一系列输入流头都搞晕了,找个时间总结一下。

InputStream is =new FileInputStream(path);


//注意这里的编码要和txt的编码一致,不然要出现乱码,达不到效果。

InputStreamReader isr=new InputStreamReader(is,"unicode");


BufferedReader bfr=new BufferedReader(isr);


String line="";


要读取Excel文件的数据并生成对象,你可以使用Apache POI库来实现。下面是一个简单的示例代码,可以读取Excel文件的数据并将其换为Java对象: ```java import java.io.FileInputStream; import java.util.ArrayList; import java.util.Iterator; import java.util.List; import org.apache.poi.ss.usermodel.Cell; import org.apache.poi.ss.usermodel.Row; import org.apache.poi.ss.usermodel.Sheet; import org.apache.poi.xssf.usermodel.XSSFWorkbook; public class ExcelToObjectConverter { public static void main(String[] args) { try { FileInputStream file = new FileInputStream("path/to/excel/file.xlsx"); XSSFWorkbook workbook = new XSSFWorkbook(file); Sheet sheet = workbook.getSheetAt(0); Iterator<Row> iterator = sheet.iterator(); List<MyObject> objects = new ArrayList<MyObject>(); while (iterator.hasNext()) { Row currentRow = iterator.next(); Iterator<Cell> cellIterator = currentRow.iterator(); MyObject object = new MyObject(); while (cellIterator.hasNext()) { Cell currentCell = cellIterator.next(); int columnIndex = currentCell.getColumnIndex(); switch (columnIndex) { case 0: object.setProperty1(currentCell.getStringCellValue()); break; case 1: object.setProperty2(currentCell.getNumericCellValue()); break; case 2: object.setProperty3(currentCell.getDateCellValue()); break; } } objects.add(object); } file.close(); // Do something with the objects... } catch (Exception e) { e.printStackTrace(); } } } ``` 在这个示例,我们首先打开Excel文件并读取第一个工作表。然后,我们遍历工作表的每一行,并将其换为一个Java对象。对于每一行,我们遍历其的每一个单元格,并将单元格的值设置到Java对象的属性。最后,我们将生成Java对象添加到一个列表,以便后续使用。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值