近期项目属于一个棋牌类项目 用到的配置表比较多 所以在这里 贴一下代码,留下来可以参考。也希望对有需要的朋友有所帮助哦

》1.需求将一个excle表格中的数据 读取 然后封装成自定义的对象,本项目使用的对象如“UserWarProps”里面大概有10个属性

public class UserWarPros {

  public Integer warID;

  //(对战类型,初级中级红包竞技)
  public Integer fightType;

  //该场次基本倍数
  private Integer basemultiple;

  //该场次基本分数
  private Integer baseScore;

  //加入房间消耗的物品ID
  public Integer joinCostItemID;

  //加入房间消耗的物品数量
  public Integer joinCostItemcount;

  //结算所用的物品ID
  public Integer resultItemID;

  //胜利奖励的物品个数
  public Integer winCount;

  //失败扣除的物品个数
  public Integer failCount;

  //破产补贴奖励的物品ID
  public Integer bankruptcyItemID;

  //破产奖励的物品数量
  public Integer bankruptcyItemCount;

  //破产奖励的最大次数
  public Integer bankruptcyMaxPrizeCount;

//构造方法 -- 省略--

}

1.2 下面就是读取的工具类 直接贴代码如下:

// 实现读取EXCLE文件,将读出的信息存放于系统物品奖励规则配置表集合中
public static List<UserWarPros> ReadFromExcel(String fileName) throws Exception {

List<UserWarPros> userWarProsListlist = new ArrayList<UserWarPros>();

File file = new File(fileName);
try {
InputStream in = new FileInputStream(file);
Workbook wb = Workbook.getWorkbook(in); //获得excel文件对象
Sheet s = wb.getSheet(0); //获取文件的指定工作表
// System.out.println(s.getColumns());
// System.out.println(s.getRows());
for (int i = 1; i < s.getRows(); i++) //第一行不要
{
Cell[] row = s.getRow(i);
UserWarPros pros = new UserWarPros(
Integer.parseInt(row[0].getContents()),
Integer.parseInt(row[1].getContents()),
Integer.parseInt(row[2].getContents()),
Integer.parseInt(row[3].getContents()), 
Integer.parseInt(row[4].getContents()),
Integer.parseInt(row[5].getContents()),
Integer.parseInt(row[6].getContents()), 
Integer.parseInt(row[7].getContents()),
Integer.parseInt(row[8].getContents()),
Integer.parseUnsignedInt(row[9].getContents()),
Integer.parseUnsignedInt(row[10].getContents())
);
userWarProsListlist.add(pros);
};

} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (BiffException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
return userWarProsListlist;
}

/**
* 根据战斗类型获取一个物品奖励对象
* @param fightType
* @param list
* @return
*/
public static UserWarPros getPros (Integer fightType , List<UserWarPros> list){

if(list == null || list.isEmpty())return null;

for (UserWarPros uPs : list) {

if(uPs.getFightType().equals(fightType))return uPs;
}

return null;
}

最后测试数据如下图:

有了这个工具,就可以直接通过文件路径 直接生成一个javabeen集合对象,下面这个方法是通过战斗编号获取一个具体的奖励规则对象;

若对有需要的朋友有帮助,可以参考一下。

但是对象需要自定义一下,若有更好的工具希望给予留言或指正哦

最后还有一个问题:想向大神们请教一下,

就是有关java工程里有一些txt文件或excle.xls等文件 为什么打完jar包 发布到在线服务器上就找不到了这些文件?但是 在本地电脑上运行没关系。

 

通过java读取excle数据的方法,今天用到了留下来供以后参考使用的更多相关文章

  1. Java读取Excel数据

    Java读取Excel数据,解析文本并格式化输出 Java读取Excel数据,解析文本并格式化输出 Java读取Excel数据,解析文本并格式化输出 下图是excel文件的路径和文件名 下图是exce ...

  2. java 读取CSV数据并写入txt文本

    java 读取CSV数据并写入txt文本 package com.vfsd; import java.io.BufferedWriter; import java.io.File; import ja ...

  3. 关于java读取excle文件的相关方法 ;

    1.读取Excle文件内容的方法 拿过来可以直接用 : 2.参照 http://www.anyrt.com/blog/list/importexcel.html#6 更多知识请参考:http://ww ...

  4. java 读取TXT文件的方法

    java读取txt文件内容.可以作如下理解: 首先获得一个文件句柄.File file = new File(); file即为文件句柄.两人之间连通电话网络了.接下来可以开始打电话了. 通过这条线路 ...

  5. java读取TXT文件的方法

    java读取txt文件内容.可以作如下理解: 首先获得一个文件句柄.File file = new File(); file即为文件句柄.两人之间连通电话网络了.接下来可以开始打电话了. 通过这条线路 ...

  6. Java读取xml数据

    xml中的代码 <?xml version="1.0" encoding="UTF-8"?> <books id="aaa" ...

  7. R中读取EXCEL 数据的方法

    最近初学R语言,在R语言读入EXCEL数据格式文件的问题上遇到了困难,经过在网上搜索解决了这一问题,下面归纳几种方法,供大家分享: 第一:R中读取excel文件中的数据的路径: 假定在您的电脑有一个e ...

  8. Java读取CSV数据并写入txt文件

    读取CSV数据并写入txt文件 package com.vfsd; import java.io.BufferedWriter; import java.io.File; import java.io ...

  9. Spark使用Java读取mysql数据和保存数据到mysql

    原文引自:http://blog.csdn.net/fengzhimohan/article/details/78471952 项目应用需要利用Spark读取mysql数据进行数据分析,然后将分析结果 ...

随机推荐

  1. SQL SERVER 死锁

    sp_lock 查看锁表名称 select request_session_id spid,OBJECT_NAME(resource_associated_entity_id) tableNamefr ...

  2. 根据设备width(375)动态设置font-size

    根据html的font-size使用rem来优化移动端页面 (function () { var w = window, d = document.documentElement, t; var re ...

  3. 39_redux_counter应用_redux版本

    一.下载 要想使用redux,首先要下载它 npm install --save redux 二.核心API 1.createStore() 作用:创建包含指定reducer的store对象 编码:i ...

  4. Grafana短信报警实现

    1.阿里云短信服务API2.Jenkins-plugin:Generic Webhook Trigger Plugin 阿里云 下载阿里云短信服务SDK 创建短信服务ACCESS_KEY_ID Gra ...

  5. ubuntu16中部署web项目到tomcat,xft和securecrt连接到ubuntu16(待续。。。)

    xftp    xftp中新建连接    ubuntu中安装和启动ssh服务    xftp连接到ubuntu 安装JDK,Tomcat    sudo tar -zvxf jdk.tar.gz   ...

  6. c#电子印章制作管理系统

    产品名称:电子印章制作管理系统 版  本  号:v0.0.0.1产品说明:本产品采用位图绘制方式,主要针对OA.ERP.金融等行业取代实物印章的一款产品,本产品有以下特点1.制作方便,容易操作2.规格 ...

  7. nginx+ flume

    nginx 作用: 做负载均衡  nginx和lvs的区别:nginx可以做反向代理 1.上传nginx安装包  tar -zxvf tengine-2.1.02.安装环境  依赖 gcc opens ...

  8. python 练习题(1-15)

    1.给定一个整数数组和一个目标值,找出数组中和为目标值的两个数. 2.生成双色球 3.逻辑运算(运算符优先级) 4.输入一个整数,判断这个数是几位数 5.用while循环计算 1-2+3-4...-9 ...

  9. Python学习—框架篇之初识Django

    什么是web框架? 框架,即framework,特指为解决一个开放性问题而设计的具有一定约束性的支撑结构,使用框架可以帮你快速开发特定的系统,简单地说,就是你用别人搭建好的舞台来做表演. 对于所有的W ...

  10. idea激活方式

    idea破解方法:转自https://note.youdao.com/ynoteshare1/index.html?id=d0f3fb42bfa1bb65a33115a1b6140f5f&ty ...