java获取项目中的文件(如何使用java自动读取web项目中的excel文件)

2024-07-17 16:12:32 9

java获取项目中的文件(如何使用java自动读取web项目中的excel文件)

本文目录

如何使用java自动读取web项目中的excel文件

package com.bjhz.gcp.common.util;import java.io.FileNotFoundException;import java.io.FileOutputStream;import java.io.IOException;import java.io.OutputStream;import java.lang.reflect.InvocationTargetException;import java.lang.reflect.Method;import java.sql.Timestamp;import java.text.SimpleDateFormat;import java.util.ArrayList;import java.util.Date;import java.util.HashMap;import java.util.List;import java.util.Locale;import java.util.Map;import org.apache.poi.hssf.usermodel.HSSFCell;import org.apache.poi.hssf.usermodel.HSSFCellStyle;import org.apache.poi.hssf.usermodel.HSSFFont;import org.apache.poi.hssf.usermodel.HSSFRichTextString;import org.apache.poi.hssf.usermodel.HSSFRow;import org.apache.poi.hssf.usermodel.HSSFSheet;import org.apache.poi.hssf.usermodel.HSSFWorkbook;/** * * 导出EXCEL * @author Herenqing * */public class WritExcel { public static final Integer WRIT_TITLE = 1; public static final Integer NO_WRIT_TITLE = 0; private static String format = "yyyy-MM-dd HH:mm:ss"; private static String nullDisplay = ""; private List《String》 columnName = new ArrayList《String》(); private Map《String, String》 columnObject = new HashMap《String, String》(); private String savePath; private OutputStream outputStream;/** * 构造写入EXCEL的路径 * 使用 put 方法创建导出的内容 * 使用 writ 方法将对象写入EXCEL * @param savePath * @throws FileNotFoundException */ public WritExcel(String savePath) { this.savePath = savePath; } /** * 构造写入EXCEL的路径 * 使用 put 方法创建导出的内容 * 使用 writOutputStream 方法将对象写入 HSSFWorkbook * @param savePath * @throws FileNotFoundException */ /*public WritExcel() { }*/ /** * 构建导出顺序及导出字段 * @param key 导出字段名 * @param value 表头 */ public void put(String key,String value) { this.columnName.add(key); this.columnObject.put(key, value); } /** * 写入EXCEL * @param 《T》 写入EXCEL的对象类型 * @param objects 写入EXCEL的对象 * @param model 写不写表头 * @throws IOException * @throws InvocationTargetException * @throws IllegalAccessException * @throws IllegalArgumentException */ public 《T》 void writ(List《T》 objects,Integer model) throws IOException, IllegalArgumentException, IllegalAccessException, InvocationTargetException { // 创建一个Excel HSSFWorkbook book = new HSSFWorkbook(); // 创建一个工作簿 HSSFSheet sheet = book.createSheet(); // 设置工作簿的默认列宽 sheet.setDefaultColumnWidth(30); Integer start = 0; if (model == WRIT_TITLE) { HSSFCellStyle titleStyle = buildTitleStyle(book); writExcelTitle(sheet,titleStyle); start = WRIT_TITLE; } HSSFCellStyle columnStyle = buildColumnStyle(book); writExcelColumn(objects,start,sheet,columnStyle); outputStream = new FileOutputStream(savePath); book.write(outputStream); outputStream.close(); } /** * 写入EXCEL * @param 《T》 写入EXCEL的对象类型 * @param objects 写入EXCEL的对象 * @param model 写不写表头 * @throws IOException * @throws InvocationTargetException * @throws IllegalAccessException * @throws IllegalArgumentException */ /*public 《T》 HSSFWorkbook writOutputStream(List《T》 objects,Integer model) throws IOException, IllegalArgumentException, IllegalAccessException, InvocationTargetException { // 创建一个Excel HSSFWorkbook book = new HSSFWorkbook(); // 创建一个工作簿 HSSFSheet sheet = book.createSheet(); // 设置工作簿的默认列宽 sheet.setDefaultColumnWidth((short)30); Integer start = 0; if (model == WRIT_TITLE) { HSSFCellStyle titleStyle = buildTitleStyle(book); writExcelTitle(sheet,titleStyle); start = WRIT_TITLE; } HSSFCellStyle columnStyle = buildColumnStyle(book); writExcelColumn(objects,start,sheet,columnStyle); return book; }*/ /** * 使用内容样式 * @return */ private HSSFCellStyle buildColumnStyle(HSSFWorkbook book){ // 设置样式 HSSFCellStyle columnStyle = book.createCellStyle(); //titleStyle.setFillForegroundColor(HSSFColor.SKY_BLUE.index); //titleStyle.setFillPattern(HSSFCellStyle.SOLID_FOREGROUND); //titleStyle.setBorderBottom(HSSFCellStyle.BORDER_THIN); columnStyle.setLeftBorderColor(HSSFCellStyle.BORDER_THIN); columnStyle.setRightBorderColor(HSSFCellStyle.BORDER_THIN); columnStyle.setTopBorderColor(HSSFCellStyle.BORDER_THIN); columnStyle.setAlignment(HSSFCellStyle.ALIGN_CENTER); // 设置字体 HSSFFont font = book.createFont(); //font.setColor(HSSFColor.VIOLET.index); //font.setFontHeight((short)12); //font.setBoldweight(HSSFFont.BOLDWEIGHT_BOLD); // 把字体应用到当前样式 columnStyle.setFont(font); return columnStyle; }/** * 使用表头样式 */ private HSSFCellStyle buildTitleStyle(HSSFWorkbook book){ // 设置样式 HSSFCellStyle titleStyle = book.createCellStyle(); //titleStyle.setFillForegroundColor(HSSFColor.SKY_BLUE.index); //titleStyle.setFillPattern(HSSFCellStyle.SOLID_FOREGROUND); //titleStyle.setBorderBottom(HSSFCellStyle.BORDER_THIN); titleStyle.setLeftBorderColor(HSSFCellStyle.BORDER_THIN); titleStyle.setRightBorderColor(HSSFCellStyle.BORDER_THIN); titleStyle.setTopBorderColor(HSSFCellStyle.BORDER_THIN); titleStyle.setAlignment(HSSFCellStyle.ALIGN_CENTER); // 设置字体 HSSFFont font = book.createFont(); //font.setColor(HSSFColor.VIOLET.index); //font.setFontHeight((short)12); font.setBoldweight(HSSFFont.BOLDWEIGHT_BOLD); // 把字体应用到当前样式 titleStyle.setFont(font); return titleStyle; } /** * 写入表头 */ private void writExcelTitle(HSSFSheet sheet,HSSFCellStyle titleStyle) throws IOException { // 表头 HSSFRow title = sheet.createRow(0); for (Integer i = 0; i 《 columnName.size(); i++) { HSSFCell cell = title.createCell(i); cell.setCellStyle(titleStyle); HSSFRichTextString value = new HSSFRichTextString(columnObject.get(columnName.get(i))); cell.setCellValue(value); } } /** * 写入内容 * @throws InvocationTargetException * @throws IllegalAccessException * @throws IllegalArgumentException */ private 《T》 void writExcelColumn(List《T》 objects,Integer start,HSSFSheet sheet,HSSFCellStyle titleStyle) throws IllegalArgumentException, IllegalAccessException, InvocationTargetException{ for (int i = 0; i 《 objects.size(); i++) { Object object = objects.get(i); Class《?》 cls = object.getClass(); HSSFRow column = sheet.createRow(start); for (int j = 0; j 《 columnName.size(); j++) { try { Method method = cls.getMethod(getMethod(columnName.get(j))); Object invokeResult = method.invoke(object); String result = returnTypeResult(invokeResult); HSSFCell cell = column.createCell(j); cell.setCellStyle(titleStyle); HSSFRichTextString value = new HSSFRichTextString(result); cell.setCellValue(value); } catch (NoSuchMethodException e) { continue; } } start++; } } /** * 构建get方法 */ private static String getMethod(String fieldName){ return "get"+fieldName.substring(0,1).toUpperCase(Locale.CHINA)+fieldName.substring(1); }private static String returnTypeResult(Object object){ if (object == null) { return nullDisplay; } if (object.getClass().getName().equals("java.util.Date")) { return formatDate(object); }else if (object.getClass().getName().equals("java.sql.Timestamp")) { Timestamp timestamp = Timestamp.valueOf(object.toString()); Date date = timestamp; return formatDate(date); }else { return object.toString(); } } /** * formatDate */ private static String formatDate(Object date) { return new SimpleDateFormat(format).format(date); }}

java怎么读取同一个工程里面的src目录下的文件

在java中获得文件的路径在我们做上传文件操作时是不可避免的。web 上运行 1:this.getClass().getClassLoader().getResource("/").getPath(); this.getClass().getClassLoader().getResource("").getPath(); 得到的是 ClassPath的绝对URI路径。如:/D:/jboss-4.2.2.GA/server/default/deploy/hp.war/WEB-INF/classes/System.getProperty("user.dir");this.getClass().getClassLoader().getResource(".").getPath(); 得到的是 项目的绝对路径。如:/D:/jboss-4.2.2.GA/server/default/deploy/hp.war2:this.getClass().getResource("/").getPath(); this.getClass().getResource("").getPath(); 得到的是当前类 文件的URI目录。如:/D:/jboss-4.2.2.GA/server/default/deploy/hp.war/WEB-INF/classes/com/jebel/helper/this.getClass().getResource(".").getPath(); X 不 能运行3:Thread.currentThread().getContextClassLoader().getResource("/").getPath()Thread.currentThread().getContextClassLoader().getResource("").getPath() 得到的是 ClassPath的绝对URI路径。如:/D:/jboss-4.2.2.GA/server/default/deploy/hp.war/WEB-INF/classes/Thread.currentThread().getContextClassLoader().getResource(".").getPath() 得到的是 项目的绝对路径。如:/D:/jboss-4.2.2.GA/server/default/deploy/hp.war在本地运行中1:this.getClass().getClassLoader().getResource("").getPath(); this.getClass().getClassLoader().getResource(".").getPath(); 得到的是 ClassPath的绝对URI路径。如:/D:/myProjects/hp/WebRoot/WEB-INF/classesthis.getClass().getClassLoader().getResource(".").getPath(); X 不 能运行2:this.getClass().getResource("").getPath(); this.getClass().getResource(".").getPath(); 得到的是当前类 文件的URI目录。如:/D:/myProjects/hp/WebRoot/WEB-INF/classes/com/jebel/helper//D:/myProjects/hp/WebRoot/WEB-INF/classes/ 得到的是 ClassPath的绝对URI路径。如:/D:/myProjects/hp/WebRoot/WEB-INF/classes

java文件怎么获取项目下的配置文件

package utils;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.IOException;import java.util.Properties;public class PropertieUtil {Properties pro = null;public PropertieUtil(){this.pro = new Properties();}public Properties getProperties(){return this.pro;}public Properties load(String fileName){FileInputStream in = null;try {fileName = String.valueOf(PropertieUtil.class.getResource("/")).replace("file:/", "") + fileName;in = new FileInputStream(fileName);pro.load(in);} catch (FileNotFoundException e) {System.out.println("==================================");System.out.println(fileName+"配置文件不存在,请联系管理员");System.out.println("异常信息:"+e);} catch (IOException e) {System.out.println("==================================");System.out.println("读取"+fileName+"配置文件时发生异常,请联系管理员");System.out.println("异常信息:"+e);}return pro;}public static void main(String args) {FileInputStream in = null;System.out.println(String.valueOf(PropertieUtil.class.getResource("/")).replace("file:/", ""));String fileName = String.valueOf(PropertieUtil.class.getResource("/")).replace("file:/", "") + "fileconfig.properties";try {in = new FileInputStream(fileName);System.out.println(""+true);} catch (FileNotFoundException e) {// TODO Auto-generated catch blocke.printStackTrace();}}}

上面是读取.properties后缀的文件,你想要这种吗?

希望能够帮到你!

java获取jar包中资源文件

在src目录下建议一个文件夹,专门存放配置文件,项目编译后,直接用jar命令打包即可。如有疑问,可远程协助解决。 有问题欢迎提问,满意请采纳,谢谢!

java在服务器上获取本项目文件问题

request.getSession().getServletContext().getRealPath("/")+"img/hswatermark.png";-------------------------------------------------------------------------------------------

java获取项目中的文件(如何使用java自动读取web项目中的excel文件)

本文编辑:admin

本文相关文章:


java获取项目中的文件(java文件怎么获取项目下的配置文件)

java获取项目中的文件(java文件怎么获取项目下的配置文件)

“java获取项目中的文件”相关信息最新大全有哪些,这是大家都非常关心的,接下来就一起看看java获取项目中的文件(java文件怎么获取项目下的配置文件)!本文目录java文件怎么获取项目下的配置文件如何使用java自动读取web项目中的e

2024年8月9日 18:30

更多文章:


征途怀旧版好玩吗?原始征途手游老版本怎么下载

征途怀旧版好玩吗?原始征途手游老版本怎么下载

本篇文章给大家谈谈老版本征途,以及征途怀旧版好玩吗对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。本文目录征途怀旧版好玩吗原始征途手游老版本怎么下载老版本征途音乐最老版本的开始的场景音乐是什么,不是张杰唱的那个,找了好久!!征途怀旧版

2024年7月4日 00:29

户型图设计软件app(查小区户型图的软件)

户型图设计软件app(查小区户型图的软件)

大家好,关于户型图设计软件app很多朋友都还不太明白,不过没关系,因为今天小编就来为大家分享关于查小区户型图的软件的知识点,相信应该可以解决大家的一些困惑和问题,如果碰巧可以解决您的问题,还望关注下本站哦,希望对各位有所帮助!本文目录查小区

2024年7月10日 16:15

oppo手机杀毒软件(oppo手机杀毒软件)

oppo手机杀毒软件(oppo手机杀毒软件)

大家好,今天小编来为大家解答以下的问题,关于oppo手机杀毒软件,oppo手机杀毒软件这个很多人还不知道,现在让我们一起来看看吧!本文目录oppo手机杀毒软件oppo手机杀毒软件哪里可以下载oppo杀毒怎么样OPPO手机上有自带杀毒的软件是

2024年6月25日 05:10

酷狗官方网站登录(手机能上酷狗官网吗,怎么上酷狗官网)

酷狗官方网站登录(手机能上酷狗官网吗,怎么上酷狗官网)

其实酷狗官方网站登录的问题并不复杂,但是又很多的朋友都不太了解手机能上酷狗官网吗,怎么上酷狗官网,因此呢,今天小编就来为大家分享酷狗官方网站登录的一些知识,希望可以帮助到大家,下面我们一起来看看这个问题的分析吧!本文目录手机能上酷狗官网吗,

2024年4月18日 01:30

磁力链bt磁力天堂下载(磁力链接怎么下载电影啊)

磁力链bt磁力天堂下载(磁力链接怎么下载电影啊)

大家好,磁力链bt磁力天堂下载相信很多的网友都不是很明白,包括磁力链接怎么下载电影啊也是一样,不过没有关系,接下来就来为大家分享关于磁力链bt磁力天堂下载和磁力链接怎么下载电影啊的一些知识点,大家可以关注收藏,免得下次来找不到哦,下面我们开

2024年7月16日 03:31

免费小说大全在线阅读(哪有免费在线小说的网站)

免费小说大全在线阅读(哪有免费在线小说的网站)

各位老铁们,大家好,今天由我来为大家分享免费小说大全在线阅读,以及哪有免费在线小说的网站的相关问题知识,希望对大家有所帮助。如果可以帮助到大家,还望关注收藏下本站,您的支持是我们最大的动力,谢谢大家了哈,下面我们开始吧!本文目录哪有免费在线

2024年5月20日 05:50

win7旗舰版32位iso(win7系统64位怎么样改回32位系统)

win7旗舰版32位iso(win7系统64位怎么样改回32位系统)

本文目录win7系统64位怎么样改回32位系统win7旗舰版32位系统iso怎么安装下了个win7 32位旗舰版的iso镜像,如何安装如何重装系统win7旗舰版32位戴尔官方win7旗舰版iso镜像 要32位 要原版 下载地址怎么把32位和

2024年6月21日 01:55

微店app人工客服电话?云集微店怎么加入

微店app人工客服电话?云集微店怎么加入

其实微店app的问题并不复杂,但是又很多的朋友都不太了解微店app人工客服电话,因此呢,今天小编就来为大家分享微店app的一些知识,希望可以帮助到大家,下面我们一起来看看这个问题的分析吧!本文目录微店app人工客服电话云集微店怎么加入微店怎

2024年6月23日 21:55

日文图片翻译器扫描(求推荐一款比较实用的日文翻译软件,可以拍照识别翻译的!)

日文图片翻译器扫描(求推荐一款比较实用的日文翻译软件,可以拍照识别翻译的!)

“日文图片翻译器扫描”相关信息最新大全有哪些,这是大家都非常关心的,接下来就一起看看日文图片翻译器扫描(求推荐一款比较实用的日文翻译软件,可以拍照识别翻译的!)!本文目录求推荐一款比较实用的日文翻译软件,可以拍照识别翻译的!曰文在线翻译.

2024年8月24日 01:00

微信8 0官方内测版下载(内测版本是什么怎么下载)

微信8 0官方内测版下载(内测版本是什么怎么下载)

本文目录内测版本是什么怎么下载怎么更新微信8.0版本vivo手机微信更新7.09好用吗怎样下载使用微信内测版内测版本是什么怎么下载 腾讯微信内测版:腾讯官方推出的,可以让一些朋友先了解和体验到最新的微信功能,并帮助发现和修改BUG,以便在正

2024年6月14日 15:56

网络电视怎么看电视台节目直播(网络电视如何看直播)

网络电视怎么看电视台节目直播(网络电视如何看直播)

这篇文章给大家聊聊关于网络电视怎么看电视台节目直播,以及网络电视如何看直播对应的知识点,希望对各位有所帮助,不要忘了收藏本站哦。本文目录网络电视如何看直播网络电视怎么看卫视节目网络电视机怎么看电视直播电视怎么看网上直播电视台中国移动网络电视

2024年7月31日 13:55

滴滴宕机了,宕机的原因是什么?服务器突然宕机是什么原因

滴滴宕机了,宕机的原因是什么?服务器突然宕机是什么原因

本文目录滴滴宕机了,宕机的原因是什么服务器突然宕机是什么原因B站、A站、豆瓣组团宕机,为何会发生集体宕机事件百度宕机事件始末滴滴宕机了,宕机的原因是什么宕机的原因是因为当天打车人数太多,导致滴滴打车的服务器运载量过大无法承受,因此平台崩溃。

2024年5月27日 05:37

小米14手机(小米14开发版怎么更新)

小米14手机(小米14开发版怎么更新)

今天给各位分享小米14开发版怎么更新的知识,其中也会对小米14开发版怎么更新进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!本文目录小米14开发版怎么更新iphone13跟小米十四哪个好小米14投入多少资金小米14系统

2024年8月29日 16:01

金铲铲之战羁绊(金铲铲之战怎么播报羁绊)

金铲铲之战羁绊(金铲铲之战怎么播报羁绊)

本文目录金铲铲之战怎么播报羁绊《金铲铲之战》卡牌数量是多少金铲铲之战怎么秀羁绊《云顶之弈》金铲铲之战羁绊是什么意思《金铲铲之战》羁绊是什么意思《金铲铲之战S6》精密发条羁绊什么意思《金铲铲之战》全1费英雄羁绊、技能曝光,让你棋先一招金铲铲之

2023年9月28日 07:00

5种抗新冠病毒中药(中药预防)

5种抗新冠病毒中药(中药预防)

其实5种抗新冠病毒中药的问题并不复杂,但是又很多的朋友都不太了解中药预防,因此呢,今天小编就来为大家分享5种抗新冠病毒中药的一些知识,希望可以帮助到大家,下面我们一起来看看这个问题的分析吧!本文目录中药预防张伯礼院士谈中药治疗提高机体的免疫

2024年7月20日 16:50

可以开车的聊天软件(开车的动态应该下载什么软件)

可以开车的聊天软件(开车的动态应该下载什么软件)

大家好,可以开车的聊天软件相信很多的网友都不是很明白,包括开车的动态应该下载什么软件也是一样,不过没有关系,接下来就来为大家分享关于可以开车的聊天软件和开车的动态应该下载什么软件的一些知识点,大家可以关注收藏,免得下次来找不到哦,下面我们开

2024年8月2日 11:05

极速飞车下载(QQ飞车极速冲锋要如何改装)

极速飞车下载(QQ飞车极速冲锋要如何改装)

本文目录QQ飞车极速冲锋要如何改装极速酷客/极速飞车 下载QQ飞车极速冲锋要如何改装传动,燃料全改满12。引擎改左边伊桑引擎有平跑速度跟小喷速度加强。涡轮:建议改左边是小喷动力跟速度加强,右边是基础动力跟小喷速度(不建议改基础动力本来就是短

2024年7月23日 22:29

罪恶都市2到底帮海地还是古巴?罪恶之城还叫什么

罪恶都市2到底帮海地还是古巴?罪恶之城还叫什么

各位老铁们好,相信很多人对罪恶都市2都不是特别的了解,因此呢,今天就来为大家分享下关于罪恶都市2以及罪恶都市2到底帮海地还是古巴的问题知识,还望可以帮助大家,解决大家的一些困惑,下面一起来看看吧!本文目录罪恶都市2到底帮海地还是古巴罪恶之城

2024年6月27日 06:25

美国更大风暴来了(第二次互联网泡沫破灭会引来美国经济超级风暴)

美国更大风暴来了(第二次互联网泡沫破灭会引来美国经济超级风暴)

大家好,今天小编来为大家解答以下的问题,关于美国更大风暴来了,第二次互联网泡沫破灭会引来美国经济超级风暴这个很多人还不知道,现在让我们一起来看看吧!本文目录第二次互联网泡沫破灭会引来美国经济超级风暴美国大规模冬季风暴来袭,将会对人们生活造成

2024年8月3日 16:22

联想e430(联想thinkpade430 进入bios如何设置从硬盘启动)

联想e430(联想thinkpade430 进入bios如何设置从硬盘启动)

本文目录联想thinkpade430 进入bios如何设置从硬盘启动联想thinkpad笔记本,E430这个系列怎么样联想THINKPADE430如何关闭触摸板联想thinkpade430 进入bios如何设置从硬盘启动1、Thinkpad

2024年6月9日 05:26

近期文章

本站热文

iphone vpn设置(ios设置vpn快捷开关)
2024-07-22 15:01:12 浏览:2342
windows12正式版下载(操作系统Windows Server 2012 R2,在哪能下载到,公司用的)
2024-07-20 17:26:53 浏览:1735
client mfc application未响应(每次进cf就提示client MFC Application未响应该怎么办啊!急急急)
2024-07-20 11:15:58 浏览:1168
java安装教程(win10如何安装JAVA)
2024-07-19 19:55:49 浏览:1164
标签列表

热门搜索