Modified: websites/production/commons/content/proper/commons-csv/testapidocs/stylesheet.css ============================================================================== --- websites/production/commons/content/proper/commons-csv/testapidocs/stylesheet.css (original) +++ websites/production/commons/content/proper/commons-csv/testapidocs/stylesheet.css Thu Aug 14 19:48:06 2014 @@ -2,16 +2,19 @@ /* Overall document style */ + +@import url('resources/fonts/dejavu.css'); + body { background-color:#ffffff; color:#353833; - font-family:Arial, Helvetica, sans-serif; - font-size:76%; + font-family:'DejaVu Sans', Arial, Helvetica, sans-serif; + font-size:14px; margin:0; } a:link, a:visited { text-decoration:none; - color:#4c6b87; + color:#4A6782; } a:hover, a:focus { text-decoration:none; @@ -19,7 +22,7 @@ a:hover, a:focus { } a:active { text-decoration:none; - color:#4c6b87; + color:#4A6782; } a[name] { color:#353833; @@ -29,41 +32,51 @@ a[name]:hover { color:#353833; } pre { - font-size:1.3em; + font-family:'DejaVu Sans Mono', monospace; + font-size:14px; } h1 { - font-size:1.8em; + font-size:20px; } h2 { - font-size:1.5em; + font-size:18px; } h3 { - font-size:1.4em; + font-size:16px; + font-style:italic; } h4 { - font-size:1.3em; + font-size:13px; } h5 { - font-size:1.2em; + font-size:12px; } h6 { - font-size:1.1em; + font-size:11px; } ul { list-style-type:disc; } code, tt { - font-size:1.2em; + font-family:'DejaVu Sans Mono', monospace; + font-size:14px; + padding-top:4px; + margin-top:8px; + line-height:1.4em; } dt code { - font-size:1.2em; + font-family:'DejaVu Sans Mono', monospace; + font-size:14px; + padding-top:4px; } table tr td dt code { - font-size:1.2em; + font-family:'DejaVu Sans Mono', monospace; + font-size:14px; vertical-align:top; + padding-top:4px; } sup { - font-size:.6em; + font-size:8px; } /* Document title and Copyright styles @@ -76,9 +89,9 @@ Document title and Copyright styles .aboutLanguage { float:right; padding:0px 21px; - font-size:.8em; + font-size:11px; z-index:200; - margin-top:-7px; + margin-top:-9px; } .legalCopy { margin-left:.5em; @@ -92,9 +105,6 @@ Document title and Copyright styles } .tab { background-color:#0066FF; - background-image:url(resources/titlebar.gif); - background-position:left top; - background-repeat:no-repeat; color:#ffffff; padding:8px; width:5em; @@ -104,17 +114,15 @@ Document title and Copyright styles Navigation bar styles */ .bar { - background-image:url(resources/background.gif); - background-repeat:repeat-x; + background-color:#4D7A97; color:#FFFFFF; padding:.8em .5em .4em .8em; height:auto;/*height:1.8em;*/ - font-size:1em; + font-size:11px; margin:0; } .topNav { - background-image:url(resources/background.gif); - background-repeat:repeat-x; + background-color:#4D7A97; color:#FFFFFF; float:left; padding:0; @@ -123,11 +131,11 @@ Navigation bar styles height:2.8em; padding-top:10px; overflow:hidden; + font-size:12px; } .bottomNav { margin-top:10px; - background-image:url(resources/background.gif); - background-repeat:repeat-x; + background-color:#4D7A97; color:#FFFFFF; float:left; padding:0; @@ -136,18 +144,20 @@ Navigation bar styles height:2.8em; padding-top:10px; overflow:hidden; + font-size:12px; } .subNav { background-color:#dee3e9; - border-bottom:1px solid #9eadc0; float:left; width:100%; overflow:hidden; + font-size:12px; } .subNav div { clear:left; float:left; padding:0 0 5px 6px; + text-transform:uppercase; } ul.navList, ul.subNavList { float:left; @@ -157,27 +167,33 @@ ul.navList, ul.subNavList { ul.navList li{ list-style:none; float:left; - padding:3px 6px; + padding: 5px 6px; + text-transform:uppercase; } ul.subNavList li{ list-style:none; float:left; - font-size:90%; } .topNav a:link, .topNav a:active, .topNav a:visited, .bottomNav a:link, .bottomNav a:active, .bottomNav a:visited { color:#FFFFFF; text-decoration:none; + text-transform:uppercase; } .topNav a:hover, .bottomNav a:hover { text-decoration:none; color:#bb7a2a; + text-transform:uppercase; } .navBarCell1Rev { - background-image:url(resources/tab.gif); - background-color:#a88834; - color:#FFFFFF; + background-color:#F8981D; + color:#253441; margin: auto 5px; - border:1px solid #c9aa44; +} +.skipNav { + position:absolute; + top:auto; + left:-9999px; + overflow:hidden; } /* Page header and footer styles @@ -191,8 +207,11 @@ Page header and footer styles margin:10px; position:relative; } +.indexHeader span{ + margin-right:15px; +} .indexHeader h1 { - font-size:1.3em; + font-size:13px; } .title { color:#2c4557; @@ -202,7 +221,7 @@ Page header and footer styles margin:5px 0 0 0; } .header ul { - margin:0 0 25px 0; + margin:0 0 15px 0; padding:0; } .footer ul { @@ -210,24 +229,22 @@ Page header and footer styles } .header ul li, .footer ul li { list-style:none; - font-size:1.2em; + font-size:13px; } /* Heading styles */ div.details ul.blockList ul.blockList ul.blockList li.blockList h4, div.details ul.blockList ul.blockList ul.blockListLast li.blockList h4 { background-color:#dee3e9; - border-top:1px solid #9eadc0; - border-bottom:1px solid #9eadc0; + border:1px solid #d0d9e0; margin:0 0 6px -8px; - padding:2px 5px; + padding:7px 5px; } ul.blockList ul.blockList ul.blockList li.blockList h3 { background-color:#dee3e9; - border-top:1px solid #9eadc0; - border-bottom:1px solid #9eadc0; + border:1px solid #d0d9e0; margin:0 0 6px -8px; - padding:2px 5px; + padding:7px 5px; } ul.blockList ul.blockList li.blockList h3 { padding:0; @@ -247,10 +264,10 @@ Page layout container styles .indexContainer { margin:10px; position:relative; - font-size:1.0em; + font-size:12px; } .indexContainer h2 { - font-size:1.1em; + font-size:13px; padding:0 0 3px 0; } .indexContainer ul { @@ -259,15 +276,18 @@ Page layout container styles } .indexContainer ul li { list-style:none; + padding-top:2px; } .contentContainer .description dl dt, .contentContainer .details dl dt, .serializedFormContainer dl dt { - font-size:1.1em; + font-size:12px; font-weight:bold; margin:10px 0 0 0; color:#4E4E4E; } .contentContainer .description dl dd, .contentContainer .details dl dd, .serializedFormContainer dl dd { - margin:10px 0 10px 20px; + margin:5px 0 10px 0px; + font-size:14px; + font-family:'DejaVu Sans Mono',monospace; } .serializedFormContainer dl.nameValue dt { margin-left:1px; @@ -306,25 +326,24 @@ ul.blockList, ul.blockListLast { } ul.blockList li.blockList, ul.blockListLast li.blockList { list-style:none; - margin-bottom:25px; + margin-bottom:15px; + line-height:1.4; } ul.blockList ul.blockList li.blockList, ul.blockList ul.blockListLast li.blockList { padding:0px 20px 5px 10px; - border:1px solid #9eadc0; - background-color:#f9f9f9; + border:1px solid #ededed; + background-color:#f8f8f8; } ul.blockList ul.blockList ul.blockList li.blockList, ul.blockList ul.blockList ul.blockListLast li.blockList { padding:0 0 5px 8px; background-color:#ffffff; - border:1px solid #9eadc0; - border-top:none; + border:none; } ul.blockList ul.blockList ul.blockList ul.blockList li.blockList { margin-left:0; padding-left:0; padding-bottom:15px; border:none; - border-bottom:1px solid #9eadc0; } ul.blockList ul.blockList ul.blockList ul.blockList li.blockListLast { list-style:none; @@ -338,107 +357,155 @@ table tr td dl, table tr td dl dt, table /* Table styles */ -.contentContainer table, .classUseContainer table, .constantValuesContainer table { - border-bottom:1px solid #9eadc0; - width:100%; -} -.contentContainer ul li table, .classUseContainer ul li table, .constantValuesContainer ul li table { +.overviewSummary, .memberSummary, .typeSummary, .useSummary, .constantsSummary, .deprecatedSummary { width:100%; + border-left:1px solid #EEE; + border-right:1px solid #EEE; + border-bottom:1px solid #EEE; } -.contentContainer .description table, .contentContainer .details table { - border-bottom:none; -} -.contentContainer ul li table th.colOne, .contentContainer ul li table th.colFirst, .contentContainer ul li table th.colLast, .classUseContainer ul li table th, .constantValuesContainer ul li table th, .contentContainer ul li table td.colOne, .contentContainer ul li table td.colFirst, .contentContainer ul li table td.colLast, .classUseContainer ul li table td, .constantValuesContainer ul li table td{ - vertical-align:top; - padding-right:20px; -} -.contentContainer ul li table th.colLast, .classUseContainer ul li table th.colLast,.constantValuesContainer ul li table th.colLast, -.contentContainer ul li table td.colLast, .classUseContainer ul li table td.colLast,.constantValuesContainer ul li table td.colLast, -.contentContainer ul li table th.colOne, .classUseContainer ul li table th.colOne, -.contentContainer ul li table td.colOne, .classUseContainer ul li table td.colOne { - padding-right:3px; +.overviewSummary, .memberSummary { + padding:0px; } -.overviewSummary caption, .packageSummary caption, .contentContainer ul.blockList li.blockList caption, .summary caption, .classUseContainer caption, .constantValuesContainer caption { +.overviewSummary caption, .memberSummary caption, .typeSummary caption, +.useSummary caption, .constantsSummary caption, .deprecatedSummary caption { position:relative; text-align:left; background-repeat:no-repeat; - color:#FFFFFF; + color:#253441; font-weight:bold; clear:none; overflow:hidden; padding:0px; + padding-top:10px; + padding-left:1px; margin:0px; + white-space:pre; } -caption a:link, caption a:hover, caption a:active, caption a:visited { +.overviewSummary caption a:link, .memberSummary caption a:link, .typeSummary caption a:link, +.useSummary caption a:link, .constantsSummary caption a:link, .deprecatedSummary caption a:link, +.overviewSummary caption a:hover, .memberSummary caption a:hover, .typeSummary caption a:hover, +.useSummary caption a:hover, .constantsSummary caption a:hover, .deprecatedSummary caption a:hover, +.overviewSummary caption a:active, .memberSummary caption a:active, .typeSummary caption a:active, +.useSummary caption a:active, .constantsSummary caption a:active, .deprecatedSummary caption a:active, +.overviewSummary caption a:visited, .memberSummary caption a:visited, .typeSummary caption a:visited, +.useSummary caption a:visited, .constantsSummary caption a:visited, .deprecatedSummary caption a:visited { color:#FFFFFF; } -.overviewSummary caption span, .packageSummary caption span, .contentContainer ul.blockList li.blockList caption span, .summary caption span, .classUseContainer caption span, .constantValuesContainer caption span { +.overviewSummary caption span, .memberSummary caption span, .typeSummary caption span, +.useSummary caption span, .constantsSummary caption span, .deprecatedSummary caption span { white-space:nowrap; - padding-top:8px; - padding-left:8px; - display:block; + padding-top:5px; + padding-left:12px; + padding-right:12px; + padding-bottom:7px; + display:inline-block; float:left; - background-image:url(resources/titlebar.gif); - height:18px; + background-color:#F8981D; + border: none; + height:16px; } -.overviewSummary .tabEnd, .packageSummary .tabEnd, .contentContainer ul.blockList li.blockList .tabEnd, .summary .tabEnd, .classUseContainer .tabEnd, .constantValuesContainer .tabEnd { - width:10px; - background-image:url(resources/titlebar_end.gif); - background-repeat:no-repeat; - background-position:top right; - position:relative; +.memberSummary caption span.activeTableTab span { + white-space:nowrap; + padding-top:5px; + padding-left:12px; + padding-right:12px; + margin-right:3px; + display:inline-block; float:left; + background-color:#F8981D; + height:16px; } -ul.blockList ul.blockList li.blockList table { - margin:0 0 12px 0px; - width:100%; +.memberSummary caption span.tableTab span { + white-space:nowrap; + padding-top:5px; + padding-left:12px; + padding-right:12px; + margin-right:3px; + display:inline-block; + float:left; + background-color:#4D7A97; + height:16px; } -.tableSubHeadingColor { - background-color: #EEEEFF; +.memberSummary caption span.tableTab, .memberSummary caption span.activeTableTab { + padding-top:0px; + padding-left:0px; + padding-right:0px; + background-image:none; + float:none; + display:inline; } -.altColor { - background-color:#eeeeef; +.overviewSummary .tabEnd, .memberSummary .tabEnd, .typeSummary .tabEnd, +.useSummary .tabEnd, .constantsSummary .tabEnd, .deprecatedSummary .tabEnd { + display:none; + width:5px; + position:relative; + float:left; + background-color:#F8981D; } -.rowColor { - background-color:#ffffff; +.memberSummary .activeTableTab .tabEnd { + display:none; + width:5px; + margin-right:3px; + position:relative; + float:left; + background-color:#F8981D; +} +.memberSummary .tableTab .tabEnd { + display:none; + width:5px; + margin-right:3px; + position:relative; + background-color:#4D7A97; + float:left; + } -.overviewSummary td, .packageSummary td, .contentContainer ul.blockList li.blockList td, .summary td, .classUseContainer td, .constantValuesContainer td { +.overviewSummary td, .memberSummary td, .typeSummary td, +.useSummary td, .constantsSummary td, .deprecatedSummary td { text-align:left; - padding:3px 3px 3px 7px; + padding:0px 0px 12px 10px; + width:100%; } -th.colFirst, th.colLast, th.colOne, .constantValuesContainer th { +th.colOne, th.colFirst, th.colLast, .useSummary th, .constantsSummary th, +td.colOne, td.colFirst, td.colLast, .useSummary td, .constantsSummary td{ + vertical-align:top; + padding-right:0px; + padding-top:8px; + padding-bottom:3px; +} +th.colFirst, th.colLast, th.colOne, .constantsSummary th { background:#dee3e9; - border-top:1px solid #9eadc0; - border-bottom:1px solid #9eadc0; text-align:left; - padding:3px 3px 3px 7px; -} -td.colOne a:link, td.colOne a:active, td.colOne a:visited, td.colOne a:hover, td.colFirst a:link, td.colFirst a:active, td.colFirst a:visited, td.colFirst a:hover, td.colLast a:link, td.colLast a:active, td.colLast a:visited, td.colLast a:hover, .constantValuesContainer td a:link, .constantValuesContainer td a:active, .constantValuesContainer td a:visited, .constantValuesContainer td a:hover { - font-weight:bold; + padding:8px 3px 3px 7px; } td.colFirst, th.colFirst { - border-left:1px solid #9eadc0; white-space:nowrap; + font-size:13px; } td.colLast, th.colLast { - border-right:1px solid #9eadc0; + font-size:13px; } td.colOne, th.colOne { - border-right:1px solid #9eadc0; - border-left:1px solid #9eadc0; -} -table.overviewSummary { - padding:0px; - margin-left:0px; + font-size:13px; } -table.overviewSummary td.colFirst, table.overviewSummary th.colFirst, -table.overviewSummary td.colOne, table.overviewSummary th.colOne { +.overviewSummary td.colFirst, .overviewSummary th.colFirst, +.overviewSummary td.colOne, .overviewSummary th.colOne, +.memberSummary td.colFirst, .memberSummary th.colFirst, +.memberSummary td.colOne, .memberSummary th.colOne, +.typeSummary td.colFirst{ width:25%; - vertical-align:middle; + vertical-align:top; } -table.packageSummary td.colFirst, table.overviewSummary th.colFirst { - width:25%; - vertical-align:middle; +td.colOne a:link, td.colOne a:active, td.colOne a:visited, td.colOne a:hover, td.colFirst a:link, td.colFirst a:active, td.colFirst a:visited, td.colFirst a:hover, td.colLast a:link, td.colLast a:active, td.colLast a:visited, td.colLast a:hover, .constantValuesContainer td a:link, .constantValuesContainer td a:active, .constantValuesContainer td a:visited, .constantValuesContainer td a:hover { + font-weight:bold; +} +.tableSubHeadingColor { + background-color:#EEEEFF; +} +.altColor { + background-color:#FFFFFF; +} +.rowColor { + background-color:#EEEEEF; } /* Content styles @@ -453,6 +520,24 @@ Content styles .docSummary { padding:0; } + +ul.blockList ul.blockList ul.blockList li.blockList h3 { + font-style:normal; +} + +div.block { + font-size:14px; + font-family:'DejaVu Serif', Georgia, "Times New Roman", Times, serif; +} + +td.colLast div { + padding-top:0px; +} + + +td.colLast a { + padding-bottom:3px; +} /* Formatting effect styles */ @@ -463,12 +548,27 @@ Formatting effect styles h1.hidden { visibility:hidden; overflow:hidden; - font-size:.9em; + font-size:10px; } .block { display:block; - margin:3px 0 0 0; + margin:3px 10px 2px 0px; + color:#474747; } -.strong { +.deprecatedLabel, .descfrmTypeLabel, .memberNameLabel, .memberNameLink, +.overrideSpecifyLabel, .packageHierarchyLabel, .paramLabel, .returnLabel, +.seeLabel, .simpleTagLabel, .throwsLabel, .typeNameLabel, .typeNameLink { font-weight:bold; +} +.deprecationComment, .emphasizedPhrase, .interfaceName { + font-style:italic; +} + +div.block div.block span.deprecationComment, div.block div.block span.emphasizedPhrase, +div.block div.block span.interfaceName { + font-style:normal; +} + +div.contentContainer ul.blockList li.blockList h2{ + padding-bottom:0px; } \ No newline at end of file
Added: websites/production/commons/content/proper/commons-csv/user-guide.html ============================================================================== --- websites/production/commons/content/proper/commons-csv/user-guide.html (added) +++ websites/production/commons/content/proper/commons-csv/user-guide.html Thu Aug 14 19:48:06 2014 @@ -0,0 +1,284 @@ +<!DOCTYPE html> +<!-- + | Generated by Apache Maven Doxia at 14 August 2014 + | Rendered using Apache Maven Fluido Skin 1.3.0 +--> +<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> + <head> + <meta charset="UTF-8" /> + <meta name="viewport" content="width=device-width, initial-scale=1.0" /> + <meta name="author" content="Commons Documentation Team" /> + <meta name="Date-Revision-yyyymmdd" content="20140814" /> + <meta http-equiv="Content-Language" content="en" /> + <title>Commons CSV - + User Guide</title> + + <link rel="stylesheet" href="./css/bootstrap.min.css" type="text/css" /> + <link rel="stylesheet" href="./css/site.css" type="text/css" /> + <link rel="stylesheet" href="./css/print.css" media="print" /> + + <script type="text/javascript" src="./js/jquery.min.js"></script> + <script type="text/javascript" src="./js/bootstrap.min.js"></script> + <script type="text/javascript" src="./js/prettify.min.js"></script> + <script type="text/javascript" src="./js/site.js"></script> + + +<link rel="stylesheet" href="./css/prettify.css" media="all" type="text/css"/> +<script src="./js/prettify.js" type="text/javascript"></script> +<script type="text/javascript">window.onload=function() { + prettyPrint(); + }</script> + </head> + + <body class="composite"> + <a href="http://commons.apache.org/" id="bannerLeft" title="Apache Commons logo"> + <img class="logo-left" src="./images/commons-logo.png" alt="Apache Commons logo"/> + </a> + <a href="index.html" id="bannerRight" title="Commons CSV™ logo"> + <img class="logo-right" src="images/logo.png" alt="Commons CSV™ logo"/> + </a> + <div class="clear"></div> + + <div class="navbar"> + <div class="navbar-inner"> + <div class="container-fluid"> + <a class="brand" href="http://commons.apache.org/proper/commons-csv/">Apache Commons CSV ™</a> + <ul class="nav"> + + <li id="publishDate">Last Published: 14 August 2014</li> + <li class="divider">|</li> <li id="projectVersion">Version: 1.0</li> + </ul> + <div class="pull-right"> <ul class="nav"> + <li> + <a href="http://www.apachecon.com/" class="externalLink" title="ApacheCon"> + ApacheCon</a> + </li> + <li> + <a href="http://www.apache.org" class="externalLink" title="Apache"> + Apache</a> + </li> + <li> + <a href="../../" title="Commons"> + Commons</a> + </li> + </ul> +</div> + </div> + </div> + </div> + + <div class="container-fluid"> + <table class="layout-table"> + <tr> + <td class="sidebar"> + <div class="well sidebar-nav"> + <ul class="nav nav-list"> + <li class="nav-header">Commons CSV</li> + <li class="none"> + <a href="index.html" title="Overview"> + Overview</a> + </li> + <li class="none"> + <a href="download_csv.cgi" title="Download"> + Download</a> + </li> + <li class="none active"> + <a href="user-guide.html" title="User Guide"> + User Guide</a> + </li> + <li class="none"> + <a href="http://wiki.apache.org/commons/CSV" class="externalLink" title="Wiki"> + Wiki</a> + </li> + </ul> + <ul class="nav nav-list"> + <li class="nav-header"><i class="icon-cog"></i>Development</li> + <li class="none"> + <a href="changes-report.html" title="History"> + History</a> + </li> + <li class="none"> + <a href="mail-lists.html" title="Mailing Lists"> + Mailing Lists</a> + </li> + <li class="none"> + <a href="issue-tracking.html" title="Issue Tracking"> + Issue Tracking</a> + </li> + <li class="none"> + <a href="team-list.html" title="Team"> + Team</a> + </li> + <li class="none"> + <a href="source-repository.html" title="Source Repository"> + Source Repository</a> + </li> + <li class="none"> + <a href="apidocs/index.html" title="Javadoc (latest)"> + Javadoc (latest)</a> + </li> + </ul> + <ul class="nav nav-list"> + <li class="nav-header"><i class="icon-info-sign"></i>Project Documentation</li> + <li class="collapsed"> + <a href="project-info.html" title="Project Information"> + Project Information</a> + </li> + <li class="collapsed"> + <a href="project-reports.html" title="Project Reports"> + Project Reports</a> + </li> + </ul> + <ul class="nav nav-list"> + <li class="nav-header">Commons</li> + <li class="none"> + <a href="../../" title="Home"> + Home</a> + </li> + <li class="none"> + <a href="http://www.apache.org/licenses/" class="externalLink" title="License"> + License</a> + </li> + <li class="collapsed"> + <a href="../../components.html" title="Components"> + Components</a> + </li> + <li class="collapsed"> + <a href="../../sandbox/index.html" title="Sandbox"> + Sandbox</a> + </li> + <li class="collapsed"> + <a href="../../dormant/index.html" title="Dormant"> + Dormant</a> + </li> + </ul> + <ul class="nav nav-list"> + <li class="nav-header">General Information</li> + <li class="none"> + <a href="../../volunteering.html" title="Volunteering"> + Volunteering</a> + </li> + <li class="none"> + <a href="../../patches.html" title="Contributing Patches"> + Contributing Patches</a> + </li> + <li class="none"> + <a href="../../building.html" title="Building Components"> + Building Components</a> + </li> + <li class="none"> + <a href="../../releases/index.html" title="Releasing Components"> + Releasing Components</a> + </li> + <li class="none"> + <a href="http://wiki.apache.org/commons/FrontPage" class="externalLink" title="Wiki"> + Wiki</a> + </li> + </ul> + <ul class="nav nav-list"> + <li class="nav-header">ASF</li> + <li class="none"> + <a href="http://www.apache.org/foundation/how-it-works.html" class="externalLink" title="How the ASF works"> + How the ASF works</a> + </li> + <li class="none"> + <a href="http://www.apache.org/foundation/getinvolved.html" class="externalLink" title="Get Involved"> + Get Involved</a> + </li> + <li class="none"> + <a href="http://www.apache.org/dev/" class="externalLink" title="Developer Resources"> + Developer Resources</a> + </li> + <li class="none"> + <a href="http://www.apache.org/foundation/sponsorship.html" class="externalLink" title="Sponsorship"> + Sponsorship</a> + </li> + <li class="none"> + <a href="http://www.apache.org/foundation/thanks.html" class="externalLink" title="Thanks"> + Thanks</a> + </li> + </ul> + </div> + <div id="poweredBy"> + <a href="http://www.apache.org/events/current-event.html" title="ApacheCon" class="builtBy"> + <img class="builtBy" alt="ApacheCon" src="http://www.apache.org/events/current-event-125x125.png" /> + </a> + <a href="http://maven.apache.org/" title="Maven" class="builtBy"> + <img class="builtBy" alt="Maven" src="http://maven.apache.org/images/logos/maven-feather.png" /> + </a> + </div> + </td> + <td class="content"> + <!-- Licensed to the Apache Software Foundation (ASF) under one or more +contributor license agreements. See the NOTICE file distributed with +this work for additional information regarding copyright ownership. +The ASF licenses this file to You under the Apache License, Version 2.0 +(the "License"); you may not use this file except in compliance with +the License. You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. --> + +<!-- ================================================== --> +<div class="section"> +<h2>Parsing an Excel CSV File<a name="Parsing_an_Excel_CSV_File"></a></h2> + +<p>To parse an Excel CSV file, write:</p> + +<div class="source"> +<pre>Reader in = new FileReader("path/to/file.csv"); +Iterable<CSVRecord> records = CSVFormat.EXCEL.parse(in); +for (CSVRecord record : records) { + String lastName = record.get("Last Name"); + String firstName = record.get("First Name"); +}</pre></div> +</div> + +<div class="section"> +<h2>Handling Byte Order Marks<a name="Handling_Byte_Order_Marks"></a></h2> + +<p> + To handle files that start with a Byte Order Mark (BOM) like some Excel CSV files, you need an extra step to deal with these optional bytes. + You can use the + <a class="externalLink" href="https://commons.apache.org/proper/commons-io/apidocs/org/apache/commons/io/input/BOMInputStream.html">BOMInputStream</a> + class from <a class="externalLink" href="https://commons.apache.org/proper/commons-io/">Apache Commons IO</a> for example: + </p> + +<div class="source"> +<pre>final URL url = ...; +final Reader reader = new InputStreamReader(new BOMInputStream(url.openStream()), "UTF-8"); +final CSVParser parser = new CSVParser(reader, CSVFormat.EXCEL.withHeader()); +try { + for (final CSVRecord record : parser) { + final String string = record.get("SomeColumn"); + ... + } +} finally { + parser.close(); + reader.close(); +}</pre></div> +</div> +<!-- ================================================== --> + + + </td> + </tr> + </table> + </div> + + <div class="footer"> + <p>Copyright © 2014 + <a href="http://www.apache.org/">The Apache Software Foundation</a>. + All Rights Reserved.</p> + +<div class="center">Apache Commons, Apache Commons CSV, Apache, the Apache feather logo, and the Apache Commons project logos are trademarks of The Apache Software Foundation. + All other marks mentioned may be trademarks or registered trademarks of their respective owners.</div> + </div> + </body> + +</html> \ No newline at end of file Propchange: websites/production/commons/content/proper/commons-csv/user-guide.html ------------------------------------------------------------------------------ svn:eol-style = native Modified: websites/production/commons/content/proper/commons-csv/xref-test/index.html ============================================================================== --- websites/production/commons/content/proper/commons-csv/xref-test/index.html (original) +++ websites/production/commons/content/proper/commons-csv/xref-test/index.html Thu Aug 14 19:48:06 2014 @@ -4,7 +4,7 @@ <!-- this is a JXR report set --> <head> <meta http-equiv="content-type" content="text/html; charset=UTF-8" /> - <title>Apache Commons CSV 1.0-SNAPSHOT Reference</title> + <title>Apache Commons CSV 1.0 Reference</title> </head> <frameset cols="20%,80%"> <frameset rows="30%,70%"> Modified: websites/production/commons/content/proper/commons-csv/xref-test/org/apache/commons/csv/CSVFileParserTest.html ============================================================================== --- websites/production/commons/content/proper/commons-csv/xref-test/org/apache/commons/csv/CSVFileParserTest.html (original) +++ websites/production/commons/content/proper/commons-csv/xref-test/org/apache/commons/csv/CSVFileParserTest.html Thu Aug 14 19:48:06 2014 @@ -98,7 +98,7 @@ <a class="jxr_linenumber" name="L90" href="#L90">90</a> <strong class="jxr_keyword">final</strong> String[] split = line.split(<span class="jxr_string">" "</span>); <a class="jxr_linenumber" name="L91" href="#L91">91</a> assertTrue(testName+<span class="jxr_string">" require 1 param"</span>, split.length >= 1); <a class="jxr_linenumber" name="L92" href="#L92">92</a> <em class="jxr_comment">// first line starts with csv data file name</em> -<a class="jxr_linenumber" name="L93" href="#L93">93</a> CSVFormat format = CSVFormat.newFormat(',').withQuoteChar('"'); +<a class="jxr_linenumber" name="L93" href="#L93">93</a> CSVFormat format = CSVFormat.newFormat(',').withQuote('"'); <a class="jxr_linenumber" name="L94" href="#L94">94</a> <strong class="jxr_keyword">boolean</strong> checkComments = false; <a class="jxr_linenumber" name="L95" href="#L95">95</a> <strong class="jxr_keyword">for</strong>(<strong class="jxr_keyword">int</strong> i=1; i < split.length; i++) { <a class="jxr_linenumber" name="L96" href="#L96">96</a> <strong class="jxr_keyword">final</strong> String option = split[i]; @@ -108,7 +108,7 @@ <a class="jxr_linenumber" name="L100" href="#L100">100</a> } <strong class="jxr_keyword">else</strong> <strong class="jxr_keyword">if</strong> (<span class="jxr_string">"IgnoreSpaces"</span>.equalsIgnoreCase(option_parts[0])) { <a class="jxr_linenumber" name="L101" href="#L101">101</a> format = format.withIgnoreSurroundingSpaces(Boolean.parseBoolean(option_parts[1])); <a class="jxr_linenumber" name="L102" href="#L102">102</a> } <strong class="jxr_keyword">else</strong> <strong class="jxr_keyword">if</strong> (<span class="jxr_string">"CommentStart"</span>.equalsIgnoreCase(option_parts[0])) { -<a class="jxr_linenumber" name="L103" href="#L103">103</a> format = format.withCommentStart(option_parts[1].charAt(0)); +<a class="jxr_linenumber" name="L103" href="#L103">103</a> format = format.withCommentMarker(option_parts[1].charAt(0)); <a class="jxr_linenumber" name="L104" href="#L104">104</a> } <strong class="jxr_keyword">else</strong> <strong class="jxr_keyword">if</strong> (<span class="jxr_string">"CheckComments"</span>.equalsIgnoreCase(option_parts[0])) { <a class="jxr_linenumber" name="L105" href="#L105">105</a> checkComments = <strong class="jxr_keyword">true</strong>; <a class="jxr_linenumber" name="L106" href="#L106">106</a> } <strong class="jxr_keyword">else</strong> { @@ -120,7 +120,7 @@ <a class="jxr_linenumber" name="L112" href="#L112">112</a> <a class="jxr_linenumber" name="L113" href="#L113">113</a> <em class="jxr_comment">// Now parse the file and compare against the expected results</em> <a class="jxr_linenumber" name="L114" href="#L114">114</a> <em class="jxr_comment">// We use a buffered reader internally so no need to create one here.</em> -<a class="jxr_linenumber" name="L115" href="#L115">115</a> <strong class="jxr_keyword">final</strong> CSVParser parser = CSVParser.parse(<strong class="jxr_keyword">new</strong> File(BASE, split[0]), format); +<a class="jxr_linenumber" name="L115" href="#L115">115</a> <strong class="jxr_keyword">final</strong> CSVParser parser = CSVParser.parse(<strong class="jxr_keyword">new</strong> File(BASE, split[0]), Charset.defaultCharset(), format); <a class="jxr_linenumber" name="L116" href="#L116">116</a> <strong class="jxr_keyword">for</strong>(<strong class="jxr_keyword">final</strong> CSVRecord record : parser) { <a class="jxr_linenumber" name="L117" href="#L117">117</a> String parsed = record.toString(); <a class="jxr_linenumber" name="L118" href="#L118">118</a> <strong class="jxr_keyword">if</strong> (checkComments) { @@ -142,7 +142,7 @@ <a class="jxr_linenumber" name="L134" href="#L134">134</a> <strong class="jxr_keyword">final</strong> String[] split = line.split(<span class="jxr_string">" "</span>); <a class="jxr_linenumber" name="L135" href="#L135">135</a> assertTrue(testName + <span class="jxr_string">" require 1 param"</span>, split.length >= 1); <a class="jxr_linenumber" name="L136" href="#L136">136</a> <em class="jxr_comment">// first line starts with csv data file name</em> -<a class="jxr_linenumber" name="L137" href="#L137">137</a> CSVFormat format = CSVFormat.newFormat(',').withQuoteChar('"'); +<a class="jxr_linenumber" name="L137" href="#L137">137</a> CSVFormat format = CSVFormat.newFormat(',').withQuote('"'); <a class="jxr_linenumber" name="L138" href="#L138">138</a> <strong class="jxr_keyword">boolean</strong> checkComments = false; <a class="jxr_linenumber" name="L139" href="#L139">139</a> <strong class="jxr_keyword">for</strong> (<strong class="jxr_keyword">int</strong> i = 1; i < split.length; i++) { <a class="jxr_linenumber" name="L140" href="#L140">140</a> <strong class="jxr_keyword">final</strong> String option = split[i]; @@ -152,7 +152,7 @@ <a class="jxr_linenumber" name="L144" href="#L144">144</a> } <strong class="jxr_keyword">else</strong> <strong class="jxr_keyword">if</strong> (<span class="jxr_string">"IgnoreSpaces"</span>.equalsIgnoreCase(option_parts[0])) { <a class="jxr_linenumber" name="L145" href="#L145">145</a> format = format.withIgnoreSurroundingSpaces(Boolean.parseBoolean(option_parts[1])); <a class="jxr_linenumber" name="L146" href="#L146">146</a> } <strong class="jxr_keyword">else</strong> <strong class="jxr_keyword">if</strong> (<span class="jxr_string">"CommentStart"</span>.equalsIgnoreCase(option_parts[0])) { -<a class="jxr_linenumber" name="L147" href="#L147">147</a> format = format.withCommentStart(option_parts[1].charAt(0)); +<a class="jxr_linenumber" name="L147" href="#L147">147</a> format = format.withCommentMarker(option_parts[1].charAt(0)); <a class="jxr_linenumber" name="L148" href="#L148">148</a> } <strong class="jxr_keyword">else</strong> <strong class="jxr_keyword">if</strong> (<span class="jxr_string">"CheckComments"</span>.equalsIgnoreCase(option_parts[0])) { <a class="jxr_linenumber" name="L149" href="#L149">149</a> checkComments = <strong class="jxr_keyword">true</strong>; <a class="jxr_linenumber" name="L150" href="#L150">150</a> } <strong class="jxr_keyword">else</strong> {