csvファイルを表示するためにMS Excelアプリケーションを使用しています。csvは単なるプレーンテキスト形式であり、「データの表示方法」に関する情報は含まれていません。この種のデータの表示は、ビューアのみに依存します。したがって、JRXlsExporterまたはJExcelApiExporterまたはJRXlsxExporterエクスポーターを使用して、 Excel形式 ( xlsまたはxlsx )でレポートを作成することができます。
例を見てみましょう。csvファイルをデータソースとして使用します。
csvファイルのデータ ( excel_data.csv ):
number_as_string,date,number_as_int
001,2013-09-23,1
002,2013-09-22,3
3,2013-09-21,4
004,2013-09-20,5
iReportのデータソースの構成は次のようになります。

サンプルのnet.sf.jasperreports.export.xls.patternおよびnet.sf.jasperreports.export.xls.detect.cell.typeプロパティを使用して、必要な形式で情報を取得します。
テンプレートは次のようになります。
<?xml version="1.0" encoding="UTF-8"?>
<jasperReport xmlns="http://jasperreports.sourceforge.net/jasperreports" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://jasperreports.sourceforge.net/jasperreports http://jasperreports.sourceforge.net/xsd/jasperreport.xsd" name="test_excel_formatting" language="groovy" pageWidth="842" pageHeight="595" orientation="Landscape" columnWidth="802" leftMargin="20" rightMargin="20" topMargin="20" bottomMargin="20" uuid="952b781d-520d-4a76-aa59-f635b8759fbe">
<property name="net.sf.jasperreports.export.xls.detect.cell.type" value="true"/>
<queryString>
<![CDATA[]]>
</queryString>
<field name="number_as_string" class="java.lang.String"/>
<field name="date" class="java.util.Date"/>
<field name="number_as_int" class="java.lang.Integer"/>
<columnHeader>
<band height="42" splitType="Stretch">
<staticText>
<reportElement uuid="667b6ca6-bf50-404e-8ef1-c654456ed8e4" stretchType="RelativeToTallestObject" mode="Opaque" x="0" y="0" width="88" height="42" backcolor="#FF99CC"/>
<box>
<topPen lineWidth="0.25"/>
<leftPen lineWidth="0.25"/>
<bottomPen lineWidth="0.25"/>
<rightPen lineWidth="0.25"/>
</box>
<textElement textAlignment="Center" verticalAlignment="Middle"/>
<text><![CDATA[Number as String, without pattern]]></text>
</staticText>
<staticText>
<reportElement uuid="080a5cc0-fa66-4b11-a3d3-f0b8a4e69204" stretchType="RelativeToTallestObject" mode="Opaque" x="88" y="0" width="88" height="42" backcolor="#9999FF"/>
<box>
<topPen lineWidth="0.25"/>
<leftPen lineWidth="0.25"/>
<bottomPen lineWidth="0.25"/>
<rightPen lineWidth="0.25"/>
</box>
<textElement textAlignment="Center" verticalAlignment="Middle"/>
<text><![CDATA[Number as Int, without pattern]]></text>
</staticText>
<staticText>
<reportElement uuid="d1fc6219-2e33-4cc9-b4fe-4ac2b5365102" stretchType="RelativeToTallestObject" mode="Opaque" x="176" y="0" width="104" height="42" backcolor="#99FFCC"/>
<box>
<topPen lineWidth="0.25"/>
<leftPen lineWidth="0.25"/>
<bottomPen lineWidth="0.25"/>
<rightPen lineWidth="0.25"/>
</box>
<textElement textAlignment="Center" verticalAlignment="Middle"/>
<text><![CDATA[Date without pattern]]></text>
</staticText>
<staticText>
<reportElement uuid="991837d7-a1ab-44ed-8177-756cfae9d369" stretchType="RelativeToTallestObject" mode="Opaque" x="280" y="0" width="104" height="42" backcolor="#9999FF"/>
<box>
<topPen lineWidth="0.25"/>
<leftPen lineWidth="0.25"/>
<bottomPen lineWidth="0.25"/>
<rightPen lineWidth="0.25"/>
</box>
<textElement textAlignment="Center" verticalAlignment="Middle"/>
<text><![CDATA[Number as Int with common pattern]]></text>
</staticText>
<staticText>
<reportElement uuid="d38154af-2017-4e10-a176-4d66e5cc9f96" stretchType="RelativeToTallestObject" mode="Opaque" x="384" y="0" width="104" height="42" backcolor="#9999FF"/>
<box>
<topPen lineWidth="0.25"/>
<leftPen lineWidth="0.25"/>
<bottomPen lineWidth="0.25"/>
<rightPen lineWidth="0.25"/>
</box>
<textElement textAlignment="Center" verticalAlignment="Middle"/>
<text><![CDATA[Number as Int with xls pattern]]></text>
</staticText>
<staticText>
<reportElement uuid="17f57019-8691-4643-abdb-ab15afe63f36" stretchType="RelativeToTallestObject" mode="Opaque" x="488" y="0" width="104" height="42" backcolor="#9999FF"/>
<box>
<topPen lineWidth="0.25"/>
<leftPen lineWidth="0.25"/>
<bottomPen lineWidth="0.25"/>
<rightPen lineWidth="0.25"/>
</box>
<textElement textAlignment="Center" verticalAlignment="Middle"/>
<text><![CDATA[Number as Int with common and xls pattern]]></text>
</staticText>
<staticText>
<reportElement uuid="f4f506bf-9511-4e1e-805b-8752a98e91ea" stretchType="RelativeToTallestObject" mode="Opaque" x="592" y="0" width="104" height="42" backcolor="#99FFCC"/>
<box>
<topPen lineWidth="0.25"/>
<leftPen lineWidth="0.25"/>
<bottomPen lineWidth="0.25"/>
<rightPen lineWidth="0.25"/>
</box>
<textElement textAlignment="Center" verticalAlignment="Middle"/>
<text><![CDATA[Date with common pattern]]></text>
</staticText>
<staticText>
<reportElement uuid="dffea96e-1dfa-47e0-8551-dd417c25ecbd" stretchType="RelativeToTallestObject" mode="Opaque" x="696" y="0" width="104" height="42" backcolor="#99FFCC"/>
<box>
<topPen lineWidth="0.25"/>
<leftPen lineWidth="0.25"/>
<bottomPen lineWidth="0.25"/>
<rightPen lineWidth="0.25"/>
</box>
<textElement textAlignment="Center" verticalAlignment="Middle"/>
<text><![CDATA[Date with common pattern]]></text>
</staticText>
</band>
</columnHeader>
<detail>
<band height="20" splitType="Stretch">
<textField>
<reportElement uuid="3d11d568-6e2c-4373-af7d-fa79b99a2908" mode="Opaque" x="0" y="0" width="88" height="20" backcolor="#FF99CC"/>
<box>
<topPen lineWidth="0.25"/>
<leftPen lineWidth="0.25"/>
<bottomPen lineWidth="0.25"/>
<rightPen lineWidth="0.25"/>
</box>
<textElement/>
<textFieldExpression><![CDATA[$F{number_as_string}]]></textFieldExpression>
</textField>
<textField>
<reportElement uuid="8b8f968e-ca6d-44d0-bc2e-50a4773d0a6f" mode="Opaque" x="88" y="0" width="88" height="20" backcolor="#9999FF"/>
<box>
<topPen lineWidth="0.25"/>
<leftPen lineWidth="0.25"/>
<bottomPen lineWidth="0.25"/>
<rightPen lineWidth="0.25"/>
</box>
<textElement/>
<textFieldExpression><![CDATA[$F{number_as_int}]]></textFieldExpression>
</textField>
<textField>
<reportElement uuid="943a468b-491d-4955-b0c0-58d550536234" mode="Opaque" x="176" y="0" width="104" height="20" backcolor="#99FFCC"/>
<box>
<topPen lineWidth="0.25"/>
<leftPen lineWidth="0.25"/>
<bottomPen lineWidth="0.25"/>
<rightPen lineWidth="0.25"/>
</box>
<textElement/>
<textFieldExpression><![CDATA[$F{date}]]></textFieldExpression>
</textField>
<textField pattern="000000">
<reportElement uuid="52a26b66-1ef5-4f77-a4a2-900a606a1171" mode="Opaque" x="280" y="0" width="104" height="20" backcolor="#9999FF"/>
<box>
<topPen lineWidth="0.25"/>
<leftPen lineWidth="0.25"/>
<bottomPen lineWidth="0.25"/>
<rightPen lineWidth="0.25"/>
</box>
<textElement/>
<textFieldExpression><![CDATA[$F{number_as_int}]]></textFieldExpression>
</textField>
<textField>
<reportElement uuid="c26be152-fae4-4a85-ae55-c70e27739a87" mode="Opaque" x="384" y="0" width="104" height="20" backcolor="#9999FF">
<property name="net.sf.jasperreports.export.xls.pattern" value="00000000000000"/>
</reportElement>
<box>
<topPen lineWidth="0.25"/>
<leftPen lineWidth="0.25"/>
<bottomPen lineWidth="0.25"/>
<rightPen lineWidth="0.25"/>
</box>
<textElement/>
<textFieldExpression><![CDATA[$F{number_as_int}]]></textFieldExpression>
</textField>
<textField pattern="00000">
<reportElement uuid="fab0fba1-1718-479d-841b-6cbaf1963a0b" mode="Opaque" x="488" y="0" width="104" height="20" backcolor="#9999FF">
<property name="net.sf.jasperreports.export.xls.pattern" value="00000000000000"/>
</reportElement>
<box>
<topPen lineWidth="0.25"/>
<leftPen lineWidth="0.25"/>
<bottomPen lineWidth="0.25"/>
<rightPen lineWidth="0.25"/>
</box>
<textElement/>
<textFieldExpression><![CDATA[$F{number_as_int}]]></textFieldExpression>
</textField>
<textField pattern="dd-MMM-yyyy">
<reportElement uuid="07552f94-56c8-413d-8dd8-5b5c667c81cf" mode="Opaque" x="592" y="0" width="104" height="20" backcolor="#99FFCC"/>
<box>
<topPen lineWidth="0.25"/>
<leftPen lineWidth="0.25"/>
<bottomPen lineWidth="0.25"/>
<rightPen lineWidth="0.25"/>
</box>
<textElement/>
<textFieldExpression><![CDATA[$F{date}]]></textFieldExpression>
</textField>
<textField>
<reportElement uuid="844449f9-1578-4729-b911-18bdd17f8cd4" mode="Opaque" x="696" y="0" width="104" height="20" backcolor="#99FFCC">
<property name="net.sf.jasperreports.export.xls.pattern" value="dd mmmm yyyy"/>
</reportElement>
<box>
<topPen lineWidth="0.25"/>
<leftPen lineWidth="0.25"/>
<bottomPen lineWidth="0.25"/>
<rightPen lineWidth="0.25"/>
</box>
<textElement/>
<textFieldExpression><![CDATA[$F{date}]]></textFieldExpression>
</textField>
</band>
</detail>
</jasperReport>
iReportでのレポートのデザインは次のようになります。

例では、レポートのプロパティnet.sf.jasperreports.export.xls.detect.cell.typeをtrueに設定しました。
最初の列 (ピンク色) にパターンなしでnumber_as_stringフィールドを配置しました。
number_as_intフィールドを列番号 2、4、5、6 (青色) に入れました。
- 列 #2 にはパターンが含まれていません。
- 列 #4 には、共通のtextFields要素のpattern属性が含まれています。000000値を使用しました。
- 列 #5 では、net.sf.jasperreports.export.xls.patternプロパティを設定しました。00000000000000の値を設定しました。
- 列 #6 は混合バリアントです。net.sf.jasperreports.export.xls.patternプロパティとtextFields要素のパターンを設定しました。
日付フィールドを列番号 3、7、8 (緑色) に入れました。
- 列 #3 にはパターンが含まれていません。デフォルトのパターンが使用されます。
- 列 #7 には、共通のtextFields要素のpattern属性が含まれています。dd-MMM-yyyy値を使用しました。
- 列 #8 には、net.sf.jasperreports.export.xls.patternプロパティを設定しました。dd mmmm yyyy値を設定しました。
結果 ( Excel形式で生成されたファイル) は次のようになります。

注:
ご覧のとおり、最初の列には元の形式のデータが含まれています。
列 #6 には、net.sf.jasperreports.export.xls.patternプロパティを使用して設定されたフォーマットのデータが含まれています。このプロパティは、 textFields要素のpattern属性よりも「強力」です。
Excelファイルは、iReport 5.2.0とXLS プレビュー、XLS プレビュー (JExcel API を使用)、およびExcel 2007 (XLSX) プレビューオプションを使用して生成されました。結果は同じでした。