poi写入读取excel 2007版xlsx 97版xls

本文提供了一个使用Java进行Excel文件(xls和xlsx)读写的示例程序。该程序通过Apache POI库创建、写入并读取包含测试数据的工作表。
  1. package cn.com.cloud.sea.office.test;
  2. import java.io.FileInputStream;
  3. import java.io.FileOutputStream;
  4. import java.io.IOException;
  5. import java.io.InputStream;
  6. import java.io.OutputStream;
  7. import org.apache.poi.hssf.usermodel.HSSFWorkbook;
  8. import org.apache.poi.ss.usermodel.Cell;
  9. import org.apache.poi.ss.usermodel.Row;
  10. import org.apache.poi.ss.usermodel.Sheet;
  11. import org.apache.poi.ss.usermodel.Workbook;
  12. import org.apache.poi.xssf.usermodel.XSSFWorkbook;
  13. public class TestReadAndWrite {
  14. public staticvoid main(String[] args) throws IOException {
  15. String path = "d:/";
  16. String fileName = "test";
  17. String fileType = "xlsx";
  18. writer(path, fileName, fileType);
  19. read(path, fileName, fileType);
  20. }
  21. private staticvoid writer(String path, String fileName,String fileType)throws IOException {
  22. //创建工作文档对象
  23. Workbook wb = null;
  24. if (fileType.equals("xls")) {
  25. wb = new HSSFWorkbook();
  26. }
  27. else if(fileType.equals("xlsx"))
  28. {
  29. wb = new XSSFWorkbook();
  30. }
  31. else
  32. {
  33. System.out.println("您的文档格式不正确!");
  34. }
  35. //创建sheet对象
  36. Sheet sheet1 = (Sheet) wb.createSheet("sheet1");
  37. //循环写入行数据
  38. for (int i =0; i < 5; i++) {
  39. Row row = (Row) sheet1.createRow(i);
  40. //循环写入列数据
  41. for (int j =0; j < 8; j++) {
  42. Cell cell = row.createCell(j);
  43. cell.setCellValue("测试"+j);
  44. }
  45. }
  46. //创建文件流
  47. OutputStream stream = new FileOutputStream(path+fileName+"."+fileType);
  48. //写入数据
  49. wb.write(stream);
  50. //关闭文件流
  51. stream.close();
  52. }
  53. public staticvoid read(String path,String fileName,String fileType)throws IOException
  54. {
  55. InputStream stream = new FileInputStream(path+fileName+"."+fileType);
  56. Workbook wb = null;
  57. if (fileType.equals("xls")) {
  58. wb = new HSSFWorkbook(stream);
  59. }
  60. else if (fileType.equals("xlsx")) {
  61. wb = new XSSFWorkbook(stream);
  62. }
  63. else {
  64. System.out.println("您输入的excel格式不正确");
  65. }
  66. Sheet sheet1 = wb.getSheetAt(0);
  67. for (Row row : sheet1) {
  68. for (Cell cell : row) {
  69. System.out.print(cell.getStringCellValue()+" ");
  70. }
  71. System.out.println();
  72. }
  73. }
  74. }
本项目采用C++编程语言结合ROS框架构建了完整的双机械臂控制系统,实现了Gazebo仿真环境下的协同运动模拟,并完成了两台实体UR10工业机器人的联动控制。该毕业设计在答辩环节获得98分的优异成绩,所有程序代码均通过系统性调试验证,保证可直接部署运行。 系统架构包含三个核心模块:基于ROS通信架构的双臂协调控制器、Gazebo物理引擎下的动力学仿真环境、以及真实UR10机器人的硬件接口层。在仿真验证阶段,开发了双臂碰撞检测算法和轨迹规划模块,通过ROS控制包实现了末端执行器的同步轨迹跟踪。硬件集成方面,建立了基于TCP/IP协议的实时通信链路,解决了双机数据同步和运动指令分发等关键技术问题。 本资源适用于自动化、机械电子、人工智能等专业方向的课程实践,可作为高年级课程设计、毕业课题的重要参考案例。系统采用模块化设计理念,控制核心与硬件接口分离架构便于功能扩展,具备工程实践能力的学习者可在现有框架基础上进行二次开发,例如集成视觉感知模块或优化运动规划算法。 项目文档详细记录了环境配置流程、参数调试方法和实验验证数据,特别说明了双机协同作业时的时序同步解决方案。所有功能模块均提供完整的API接口说明,便于使用者快速理解系统架构并进行定制化修改。 资源来源于网络分享,仅用于学习交流使用,请勿用于商业,如有侵权请联系我删除!
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值