`
确实比较男
  • 浏览: 115274 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

修复G4Studio导出execl时数字被转换成字符的问题

阅读更多

G4Studio是国人开发的一个开源的二次开发平台,自己感觉还是很不错的,很多我们要用到的功能都被包含在里面了,昨天在用G4studio导出execl的时候发现导出来本来是数字的被改变成了文本,这样就不方便在execl中做计算,跟踪源码后发现G4Studio在转换数据的格式的时候有一点问题,修改如下:

1. 首先找到org.g4studio.core.web.report.excel下面的ExcelFiller,这个类是execl数据填充器

2. 然后找到private void fillFields(WritableSheet wSheet) throws Exception, 这个方法就是我们要修改的方法,这个方法是写入表格字段对象

3. 在fillFields中找到String type = getType(cell.getContents().trim()); ,把这句话给注释掉,然后在下面加上String type = getType(dataDto.getAsString(key));

4. 找到getType这个方法中的if (pType.indexOf(":n") != -1 || pType.indexOf(":N") != -1),把修改成if (isNumber(pType))

5. 接下来就要添加isNumber方法了,总共添加两个方法:

 

/**
	 * 判断字符串是否是数字
	 * 
	 * @param str
	 *            源字符串
	 * @return true是,false否
	 */
	private static boolean isNumber(String number) {
		// 判断参数
		if (G4Utils.isEmpty(number)) {
			return false;
		}
		// 查看是否有小数点
		int index = number.indexOf(".");
		if (index < 0) {
			return isNumeric(number);
		} else {
			// 如果有多个".",则不是数字
			if (number.indexOf(".") != number.lastIndexOf(".")) {
				return false;
			}
			String num1 = number.substring(0, index);
			String num2 = number.substring(index + 1);
			return isNumeric(num1) && isNumeric(num2);
		}
	}
	/**
	 * 判断字符串是否由纯数字组成
	 * 
	 * @param str
	 *            源字符串
	 * @return true是,false否
	 */
	private static boolean isNumeric(String str) {
		if (G4Utils.isEmpty(str)) {
			return false;
		}
		Pattern pattern = Pattern.compile("^-?\\d*");
		return pattern.matcher(str).matches();
	}

6. 到此就完成了。

 

 

 

 

分享到:
评论

相关推荐

    Delphi导出EXECL EXECL属性 导出EXECL

    通过Delphi导出EXECL 1.全部是Delphi自带的控件 2.代码有注释,原代码用的是SQL Sever自带的master数据库,用ADOQuery控件链接数据库,拿到代码修改一下数据库就可以使用 3.EXECL中的各种属性也有如:字体大小、字体...

    导出execl文档报错解决方法

    在使用Excel进行数据处理或分析时,有时可能会遇到“导出Excel文档报错”的问题。这个问题通常是由于系统组件缺失或不兼容导致的。在这种情况下,根据提供的信息,“ttf16.ocx”文件可能是一个关键的系统控件,用于...

    C#导出execl表格

    在C#编程中,导出Excel表格是一项常见的需求,尤其在数据处理和报告生成时。本文将详细讲解如何使用C#来实现Excel文件的导出,主要涉及Microsoft Office Interop库、EPPlus库以及NPOI库这三种常用的方法。 1. ...

    execl导入导出

    "Excel导入导出"这一主题涵盖了如何将数据从外部源导入到Excel工作表,以及如何将Excel数据导出到其他格式或系统中。以下是对这个主题的详细阐述: **一、Excel数据导入** 1. **CSV导入**:CSV(逗号分隔值)是一...

    asp.net中导出Execl的方法

    在ASP.NET中,导出Excel是一项常见的需求,通常用于将网页上的数据以表格的形式下载为Excel文件供用户进一步处理或存储。本文将详细介绍两种在ASP.NET中实现导出Excel的方法。 **方法一:导出整个HTML到Excel** ...

    超级列表框导出EXECL.rar

    超级列表框导出EXECL.rar 超级列表框导出EXECL.rar 超级列表框导出EXECL.rar 超级列表框导出EXECL.rar 超级列表框导出EXECL.rar 超级列表框导出EXECL.rar

    c# sql server数据库操作源程序,集连接,显示,修改,查询,导入/导出EXECL。

    c# 编写的winform 操作sql server数据库操作源程序,程序设计技巧性强,集sql server数据库操作之大全,跨窗体增加,修改数据,可连接,显示,修改,查询,导入/导出EXECL。可访问本地数据库,也可访问局域网数据库...

    导出execl包

    标题中的“导出execl包”指的是在编程中利用特定库或工具将数据导出为Excel格式的文件,这在数据分析、报表生成、数据交换等场景中非常常见。在这个案例中,我们关注的是名为“jxl”的Java库,它允许开发者以编程...

    .net 导出到execl方案

    在.NET框架中,导出大量数据到Excel是常见的需求,特别是在数据分析、报表生成或数据交换等场景。本文将深入探讨几种不同的.NET(C#)实现批量数据导出到Excel的方案,帮助开发者选择最适合他们项目的方法。 一、...

    将ASP.NET的列表导出EXECL

    3. **处理样式问题**:默认情况下,GridView导出的Excel文件可能会丢失某些样式,如数字前的零会被自动去掉。为了解决这个问题,可以向输出数据流中添加CSS样式。特别是对于ID列,需要将其作为文本处理。在HTML输出...

    易语言源码易语言直接导出execl源码.rar

    易语言源码易语言直接导出execl源码.rar 易语言源码易语言直接导出execl源码.rar 易语言源码易语言直接导出execl源码.rar 易语言源码易语言直接导出execl源码.rar 易语言源码易语言直接导出execl源码.rar ...

    jq导出execl-----

    描述中的 "jq导出execl-----cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc" 看似是一串填充字符,没有提供具体的技术细节。但根据上下文,我们可以推断这可能是指使用jQuery来处理大量数据并将...

    winfrom导出Execl

    在WinForms应用中,通常会将这些功能封装到自定义类中,例如`ExcelExporter`,以便在需要导出数据时调用。类中可以包含方法如`ExportToExcel`,接受数据源和输出路径作为参数,然后使用以上介绍的库将数据写入Excel...

    table 导出execl 样式继承

    有这个种数据 execl 显示的需求时 提供一键导出功能 可设置单元格背景色等继承table 样式

    VB.NET SQL查询导出EXECL

    VB.NET SQL查询导出EXECL;导出速度快,代码简单高效。需要引用 Microsoft.Office.Interop ;

    DataGridView 打印 导出Execl

    - 导出Excel时,注意处理特殊字符和日期格式,以免出现乱码或格式错误。 - 考虑性能优化,特别是大数据量时,避免一次性加载所有数据到内存。 - 使用Interop接口可能受到Office版本和权限的影响,务必测试不同环境下...

    JAVA导出Execl

    Java 导出 Excel 是一种常见的数据处理需求,特别是在企业级应用中,用于生成报表或进行数据分析。MyEclipse 是一个集成开发环境(IDE),广泛用于 Java 应用...记得在处理中文时设置正确的编码,以防止出现乱码问题。

    WinForm中导出Execl的方法

    在Windows Forms(WinForm)应用开发中,导出数据到Excel是常见的需求,这通常用于报表生成、数据备份或数据交换。本节将详细介绍在WinForm应用中如何实现Excel文件的导出,主要关注编程实践和技术要点。 首先,...

    易模块——超级列表框导出EXECL

    易模块——超级列表框导出EXECL 易模块——超级列表框导出EXECL

Global site tag (gtag.js) - Google Analytics