# CsvSaveOptions

## Content

<div class="docapp-java-api-doc-main"><style>:not(h1, h2, h3, h4, h5, h6)>code,
:not(h1, h2, h3, h4, h5, h6)>tt {
    font-size: 14px;
    padding-top: 4px;
    margin-top: 8px;
    line-height: 1.4em;
}

.summary-table dt code {
    font-size: 14px;
    vertical-align: top;
    padding-top: 4px;
}

.tab {
    background-color: #0066FF;
    color: #ffffff;
    padding: 8px;
    width: 5em;
    font-weight: bold;
}

/*
 * Styles for page header and footer.
 */
.title {
    color: #2c4557;
    margin: 10px 0;
}

.sub-title {
    margin: 5px 0 0 0;
}

.header ul {
    margin: 0 0 15px 0;
    padding: 0;
}

.header ul li,
.footer ul li {
    list-style: none;
}

/*
 * Styles for headings.
 */
.summary h2,
.details h2,
h2,
.block-list h2 {
    padding: 0;
    margin: 15px 0;
}

.summary h3,
.details h3,
.summary .inherited-list h2 {
    background-color: var(--ds-product-color);
    color: #fff;
    border: 1px solid #d0d9e0;
    padding: 7px 5px;
}

.summary h3 a,
.details h3 a,
.summary .inherited-list h2 a {
    color: #fff !important;
}
/*
 * Styles for page layout containers.
 */
dl.notes>dt {
    font-size: 12px;
    font-weight: bold;
    margin: 10px 0 0 0;
    color: #4E4E4E;
}

dl.notes>dd {
    margin: 5px 10px 10px 0;
    font-size: 14px;
}

dl.name-value>dt {
    margin-left: 1px;
    font-size: 1.1em;
    display: inline;
    font-weight: bold;
}

dl.name-value>dd {
    margin: 0 0 0 1px;
    font-size: 1.1em;
    display: inline;
}

/*
 * Styles for lists.
 */
li.circle {
    list-style: circle;
}

ul.horizontal li {
    display: inline;
    font-size: 0.9em;
}

div.inheritance {
    margin: 0;
    padding: 0;
}

div.inheritance div.inheritance {
    margin-left: 2em;
}

ul.block-list,
ul.details-list,
ul.member-list,
ul.summary-list {
    margin: 10px 0 10px 0;
    padding: 0;
}

ul.block-list>li,
ul.details-list>li,
ul.member-list>li,
ul.summary-list>li {
    list-style: none;
    margin-bottom: 15px;
    line-height: 1.4;
}

.summary-table dl,
.summary-table dl dt,
.summary-table dl dd {
    margin-top: 0;
    margin-bottom: 1px;
}

ul.see-list,
ul.see-list-long {
    padding-left: 0;
    list-style: none;
}

ul.see-list li {
    display: inline;
}

ul.see-list li:not(:last-child):after,
ul.see-list-long li:not(:last-child):after {
    content: ", ";
    white-space: pre-wrap;
}

/*
 * Styles for tables.
 */
.summary-table,
.details-table {
    width: 100%;
    border-spacing: 0;
    border-left: 1px solid #EEE;
    border-right: 1px solid #EEE;
    border-bottom: 1px solid #EEE;
    padding: 0;
}

.caption {
    position: relative;
    text-align: left;
    background-repeat: no-repeat;
    color: #253441;
    font-weight: bold;
    clear: none;
    overflow: hidden;
    padding: 0;
    padding-top: 10px;
    padding-left: 1px;
    margin: 0;
    white-space: pre;
}

.caption a:link,
.caption a:visited {
    color: #1f389c;
}

.caption a:hover,
.caption a:active {
    color: #FFFFFF;
}

.caption span {
    white-space: nowrap;
    padding-top: 5px;
    padding-left: 12px;
    padding-right: 12px;
    padding-bottom: 7px;
    display: inline-block;
    background-color: var(--ds-product-color);
    color: #fff;
    border: none;
}

div.table-tabs {
    padding: 10px 0 0 1px;
    margin: 0;
}

div.table-tabs>button {
    border: none;
    cursor: pointer;
    padding: 5px 12px 7px 12px;
    font-weight: bold;
    margin-right: 3px;
}

div.table-tabs>button.active-table-tab {
    background: var(--ds-product-color);
    color: #fff;
}

div.table-tabs>button.table-tab {
    background: var(--ds-product-color);
    color: #FFFFFF;
    border-bottom: 1px solid #eee;
}

.two-column-summary {
    display: grid;
    grid-template-columns: minmax(15%, max-content) minmax(15%, auto);
}

.three-column-summary {
    display: grid;
    grid-template-columns: minmax(10%, max-content) minmax(15%, max-content) minmax(15%, auto);
}

.four-column-summary {
    display: grid;
    grid-template-columns: minmax(10%, max-content) minmax(10%, max-content) minmax(10%, max-content) minmax(10%, auto);
}

@media screen and (max-width: 600px) {
    .two-column-summary {
        display: grid;
        grid-template-columns: 1fr;
    }
}

@media screen and (max-width: 800px) {
    .three-column-summary {
        display: grid;
        grid-template-columns: minmax(10%, max-content) minmax(25%, auto);
    }

    .three-column-summary .col-last {
        grid-column-end: span 2;
    }
}

@media screen and (max-width: 1000px) {
    .four-column-summary {
        display: grid;
        grid-template-columns: minmax(15%, max-content) minmax(15%, auto);
    }
}

.summary-table>div,
.details-table>div {
    text-align: left;
    padding: 8px 3px 3px 7px;
}

.col-first,
.col-second,
.col-last,
.col-constructor-name,
.col-summary-item-name {
    vertical-align: top;
    padding-right: 0;
    padding-top: 8px;
    padding-bottom: 3px;
}

.table-header {
    background: var(--ds-product-color);
    color: #fff;
    font-weight: bold;
}

.col-first,
.col-first {
    font-size: 13px;
}

.col-second,
.col-second,
.col-last,
.col-constructor-name,
.col-summary-item-name,
.col-last {
    font-size: 13px;
}

.col-first,
.col-second,
.col-constructor-name {
    vertical-align: top;
    overflow: auto;
}

.col-last {
    white-space: normal;
}

.col-first a:link,
.col-first a:visited,
.col-second a:link,
.col-second a:visited,
.col-first a:link,
.col-first a:visited,
.col-second a:link,
.col-second a:visited,
.col-constructor-name a:link,
.col-constructor-name a:visited,
.col-summary-item-name a:link,
.col-summary-item-name a:visited,
.constant-values-container a:link,
.constant-values-container a:visited,
.all-classes-container a:link,
.all-classes-container a:visited,
.all-packages-container a:link,
.all-packages-container a:visited {
    font-weight: bold;
}

.table-sub-heading-color {
    background-color: #EEEEFF;
}

.even-row-color,
.even-row-color .table-header {
    background-color: #FFFFFF;
}

.odd-row-color,
.odd-row-color .table-header {
    background-color: #EEEEEF;
}

/*
 * Styles for contents.
 */
.deprecated-content {
    margin: 0;
    padding: 10px 0;
}

div.block {
    font-size: 14px;
}

.col-last div {
    padding-top: 0;
}

.col-last a {
    padding-bottom: 3px;
}

.module-signature,
.package-signature,
.type-signature,
.member-signature {
    font-size: 14px;
    margin: 14px 0;
    white-space: pre-wrap;
}

.module-signature,
.package-signature,
.type-signature {
    margin-top: 0;
}

.member-signature .type-parameters-long,
.member-signature .parameters,
.member-signature .exceptions {
    display: inline-block;
    vertical-align: top;
    white-space: pre;
}

.member-signature .type-parameters {
    white-space: normal;
}

/*
 * Styles for formatting effect.
 */
.source-line-no {
    color: green;
    padding: 0 30px 0 0;
}

h1.hidden {
    visibility: hidden;
    overflow: hidden;
    font-size: 10px;
}

.block {
    display: block;
    margin: 0 10px 5px 0;
    color: #474747;
}

.deprecated-label,
.descfrm-type-label,
.implementation-label,
.member-name-label,
.member-name-link,
.module-label-in-package,
.module-label-in-type,
.override-specify-label,
.package-label-in-type,
.package-hierarchy-label,
.type-name-label,
.type-name-link,
.search-tag-link,
.preview-label {
    font-weight: bold;
}

.deprecation-block {
    font-size: 14px;
    border-style: solid;
    border-width: thin;
    border-radius: 10px;
    padding: 10px;
    margin-bottom: 10px;
    margin-right: 10px;
    display: inline-block;
}

.preview-block {
    font-size: 14px;
    border-style: solid;
    border-width: thin;
    border-radius: 10px;
    padding: 10px;
    margin-bottom: 10px;
    margin-right: 10px;
    display: inline-block;
}

/*
 * Styles for user-provided tables.
 *
 * borderless:
 *      No borders, vertical margins, styled caption.
 *      This style is provided for use with existing doc comments.
 *      In general, borderless tables should not be used for layout purposes.
 *
 * plain:
 *      Plain borders around table and cells, vertical margins, styled caption.
 *      Best for small tables or for complex tables for tables with cells that span
 *      rows and columns, when the "striped" style does not work well.
 *
 * striped:
 *      Borders around the table and vertical borders between cells, striped rows,
 *      vertical margins, styled caption.
 *      Best for tables that have a header row, and a body containing a series of simple rows.
 */

table.borderless,
table.plain,
table.striped {
    margin-top: 10px;
    margin-bottom: 10px;
}

table.borderless>caption,
table.plain>caption,
table.striped>caption {
    font-weight: bold;
    font-size: smaller;
}

table.borderless th,
table.borderless td,
table.plain th,
table.plain td,
table.striped th,
table.striped td {
    padding: 2px 5px;
}

table.borderless,
table.borderless>thead>tr>th,
table.borderless>tbody>tr>th,
table.borderless>tr>th,
table.borderless>thead>tr>td,
table.borderless>tbody>tr>td,
table.borderless>tr>td {
    border: none;
}

table.borderless>thead>tr,
table.borderless>tbody>tr,
table.borderless>tr {
    background-color: transparent;
}

table.plain {
    border-collapse: collapse;
    border: 1px solid black;
}

table.plain>thead>tr,
table.plain>tbody tr,
table.plain>tr {
    background-color: transparent;
}

table.plain>thead>tr>th,
table.plain>tbody>tr>th,
table.plain>tr>th,
table.plain>thead>tr>td,
table.plain>tbody>tr>td,
table.plain>tr>td {
    border: 1px solid black;
}

table.striped {
    border-collapse: collapse;
    border: 1px solid black;
}

table.striped>thead {
    background-color: #E3E3E3;
}

table.striped>thead>tr>th,
table.striped>thead>tr>td {
    border: 1px solid black;
}

table.striped>tbody>tr:nth-child(even) {
    background-color: #EEE
}

table.striped>tbody>tr:nth-child(odd) {
    background-color: #FFF
}

table.striped>tbody>tr>th,
table.striped>tbody>tr>td {
    border-left: 1px solid black;
    border-right: 1px solid black;
}

table.striped>tbody>tr>th {
    font-weight: normal;
}
</style><h1>Class CsvSaveOptions</h1>
<!-- ======== START OF CLASS DATA ======== -->

<div class="inheritance" title="Inheritance Tree"><a class="external-link" href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang">java.lang.Object</a>
<div class="inheritance"><a href="SaveOptionsBase.html" title="class in com.grapecity.documents.excel">com.grapecity.documents.excel.SaveOptionsBase</a>
<div class="inheritance">com.grapecity.documents.excel.CsvSaveOptions</div>
</div>
</div>
<section class="class-description" id="class-description">
<hr>
<div class="type-signature"><span class="modifiers">public class </span><span class="element-name type-name-label">CsvSaveOptions</span>
<span class="extends-implements">extends <a href="SaveOptionsBase.html" title="class in com.grapecity.documents.excel">SaveOptionsBase</a></span></div>
<div class="block">Represents options for saving a workbook as a CSV file. <p>Use this class to configure CSV export settings such as column, row, and cell  separators, text encoding, value quoting, and whether leading blank rows and columns  are trimmed. An instance of this class can be passed to  <a href="Workbook.html#save(java.lang.String,com.grapecity.documents.excel.SaveOptionsBase)"><code>Workbook.save(String,SaveOptionsBase)</code></a> when saving CSV content.</p>
<pre><code data-language="Java">
 worksheet.getRange("A1:B2").setValue(new Object[][] {
     {"Name", "Value"},
     {"Test", 100}
 });
 CsvSaveOptions options = new CsvSaveOptions();
 options.setColumnSeparator(";");
 options.setRowSeparator("\r\n");
 options.setCellSeparator('"');
 options.setValueQuoteType(ValueQuoteType.Always);
 workbook.save("path/to/output.csv", options);
 </code></pre></div>
</section>
<section class="summary">
<ul class="summary-list">
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<li>
<section class="constructor-summary" id="constructor-summary">
<h2>Constructor Summary</h2>
<div class="caption"><span>Constructors</span></div>
<div class="summary-table two-column-summary">
<div class="table-header col-first">Constructor</div>
<div class="table-header col-last">Description</div>
<div class="col-constructor-name even-row-color"><code><a class="member-name-link" href="#%3Cinit%3E()">CsvSaveOptions</a>()</code></div>
<div class="col-last even-row-color">
<div class="block">Creates options for saving a workbook as a CSV file.</div>
</div>
</div>
</section>
</li>
<!-- ========== METHOD SUMMARY =========== -->
<li>
<section class="method-summary" id="method-summary">
<h2>Method Summary</h2>
<div id="method-summary-table">
<div aria-orientation="horizontal" class="table-tabs" role="tablist"><button aria-controls="method-summary-table.tabpanel" aria-selected="true" class="active-table-tab" id="method-summary-table-tab0" onclick="show('method-summary-table', 'method-summary-table', 3)" onkeydown="switchTab(event)" role="tab" tabindex="0">All Methods</button><button aria-controls="method-summary-table.tabpanel" aria-selected="false" class="table-tab" id="method-summary-table-tab2" onclick="show('method-summary-table', 'method-summary-table-tab2', 3)" onkeydown="switchTab(event)" role="tab" tabindex="-1">Instance Methods</button><button aria-controls="method-summary-table.tabpanel" aria-selected="false" class="table-tab" id="method-summary-table-tab4" onclick="show('method-summary-table', 'method-summary-table-tab4', 3)" onkeydown="switchTab(event)" role="tab" tabindex="-1">Concrete Methods</button><button aria-controls="method-summary-table.tabpanel" aria-selected="false" class="table-tab" id="method-summary-table-tab6" onclick="show('method-summary-table', 'method-summary-table-tab6', 3)" onkeydown="switchTab(event)" role="tab" tabindex="-1">Deprecated Methods</button></div>
<div id="method-summary-table.tabpanel" role="tabpanel">
<div aria-labelledby="method-summary-table-tab0" class="summary-table three-column-summary">
<div class="table-header col-first">Modifier and Type</div>
<div class="table-header col-second">Method</div>
<div class="table-header col-last">Description</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>final char</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a class="member-name-link" href="#getCellSeparator()">getCellSeparator</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Gets the cell separator character used when saving CSV content.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>final <a class="external-link" href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang">String</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a class="member-name-link" href="#getColumnSeparator()">getColumnSeparator</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Gets the column separator used when saving CSV data.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>final <a class="external-link" href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang">String</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a class="member-name-link" href="#getEncoding()">getEncoding</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Gets the default encoding used when saving a CSV file.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>final boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a class="member-name-link" href="#getEscapeFormulaLikeValues()">getEscapeFormulaLikeValues</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Gets whether CSV values that begin with formula-like characters are escaped during export.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>final int[]</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a class="member-name-link" href="#getQuoteColumns()">getQuoteColumns</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Gets the zero-based column indices that are configured to be quoted during CSV export.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>final <a class="external-link" href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang">String</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a class="member-name-link" href="#getRowSeparator()">getRowSeparator</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Gets the row separator.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4 method-summary-table-tab6"><code>final <a class="external-link" href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang">String</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4 method-summary-table-tab6"><code><a class="member-name-link" href="#getSeparatorString()">getSeparatorString</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4 method-summary-table-tab6">
<div class="block"><span class="deprecated-label">Deprecated.</span>
<div class="deprecation-comment">Use <a href="#getColumnSeparator()"><code>getColumnSeparator()</code></a> instead.</div>
</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>final boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a class="member-name-link" href="#getTrimLeadingBlankRowAndColumn()">getTrimLeadingBlankRowAndColumn</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Gets whether leading blank rows and columns are trimmed when saving to CSV.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>final <a href="ValueQuoteType.html" title="enum class in com.grapecity.documents.excel">ValueQuoteType</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a class="member-name-link" href="#getValueQuoteType()">getValueQuoteType</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Gets how values are quoted in the exported text file.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>final void</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a class="member-name-link" href="#setCellSeparator(char)">setCellSeparator</a><wbr>(char&nbsp;value)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Sets the cell separator character used when saving CSV content.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>final void</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a class="member-name-link" href="#setColumnSeparator(java.lang.String)">setColumnSeparator</a><wbr>(<a class="external-link" href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang">String</a>&nbsp;value)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Sets the column separator used when saving CSV data.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>final void</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a class="member-name-link" href="#setEncoding(java.lang.String)">setEncoding</a><wbr>(<a class="external-link" href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang">String</a>&nbsp;value)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Sets the default encoding used when saving a CSV file.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>final void</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a class="member-name-link" href="#setEscapeFormulaLikeValues(boolean)">setEscapeFormulaLikeValues</a><wbr>(boolean&nbsp;value)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Sets whether CSV values that begin with formula-like characters are escaped during export.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>final void</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a class="member-name-link" href="#setQuoteColumns(int%5B%5D)">setQuoteColumns</a><wbr>(int[]&nbsp;value)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Sets the zero-based column indices that are configured to be quoted during CSV export.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>final void</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a class="member-name-link" href="#setRowSeparator(java.lang.String)">setRowSeparator</a><wbr>(<a class="external-link" href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang">String</a>&nbsp;value)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Sets the row separator.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4 method-summary-table-tab6"><code>final void</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4 method-summary-table-tab6"><code><a class="member-name-link" href="#setSeparatorString(java.lang.String)">setSeparatorString</a><wbr>(<a class="external-link" href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang">String</a>&nbsp;value)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4 method-summary-table-tab6">
<div class="block"><span class="deprecated-label">Deprecated.</span>
<div class="deprecation-comment">Use <a href="#getColumnSeparator()"><code>getColumnSeparator()</code></a> instead.</div>
</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>final void</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a class="member-name-link" href="#setTrimLeadingBlankRowAndColumn(boolean)">setTrimLeadingBlankRowAndColumn</a><wbr>(boolean&nbsp;value)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Sets whether leading blank rows and columns are trimmed when saving to CSV.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>final void</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a class="member-name-link" href="#setValueQuoteType(com.grapecity.documents.excel.ValueQuoteType)">setValueQuoteType</a><wbr>(<a href="ValueQuoteType.html" title="enum class in com.grapecity.documents.excel">ValueQuoteType</a>&nbsp;value)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Sets how values are quoted in the exported text file.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a class="external-link" href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang">String</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a class="member-name-link" href="#toString()">toString</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Returns a string representation of these CSV save options.</div>
</div>
</div>
</div>
</div>
<div class="inherited-list">
<h3 id="methods-inherited-from-class-com.grapecity.documents.excel.SaveOptionsBase">Methods inherited from class&nbsp;com.grapecity.documents.excel.<a href="SaveOptionsBase.html" title="class in com.grapecity.documents.excel">SaveOptionsBase</a></h3>
<code><a href="SaveOptionsBase.html#getFileFormat()">getFileFormat</a>, <a href="SaveOptionsBase.html#setFileFormat(com.grapecity.documents.excel.SaveFileFormat)">setFileFormat</a></code></div>
<div class="inherited-list">
<h3 id="methods-inherited-from-class-java.lang.Object">Methods inherited from class&nbsp;java.lang.<a class="external-link" href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang">Object</a></h3>
<code><a class="external-link" href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#clone()" title="class or interface in java.lang">clone</a>, <a class="external-link" href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#equals(java.lang.Object)" title="class or interface in java.lang">equals</a>, <a class="external-link" href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#finalize()" title="class or interface in java.lang">finalize</a>, <a class="external-link" href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#getClass()" title="class or interface in java.lang">getClass</a>, <a class="external-link" href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#hashCode()" title="class or interface in java.lang">hashCode</a>, <a class="external-link" href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#notify()" title="class or interface in java.lang">notify</a>, <a class="external-link" href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#notifyAll()" title="class or interface in java.lang">notifyAll</a>, <a class="external-link" href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#wait()" title="class or interface in java.lang">wait</a>, <a class="external-link" href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#wait(long)" title="class or interface in java.lang">wait</a>, <a class="external-link" href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#wait(long,int)" title="class or interface in java.lang">wait</a></code></div>
</section>
</li>
</ul>
</section>
<section class="details">
<ul class="details-list">
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<li>
<section class="constructor-details" id="constructor-detail">
<h2>Constructor Details</h2>
<ul class="member-list">
<li>
<section class="detail" id="<init>()">
<h3>CsvSaveOptions</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="element-name">CsvSaveOptions</span>()</div>
<div class="block">Creates options for saving a workbook as a CSV file. <p>This constructor initializes the option object to use  <a href="SaveFileFormat.html#Csv"><code>SaveFileFormat.Csv</code></a>. Configure CSV-specific settings before passing  the options to a workbook save API.</p>
<pre><code data-language="Java">
 worksheet.getRange("A1:B2").setValue(new Object[][] {
     {"Name", "Value"},
     {"Test", 100}
 });
 CsvSaveOptions options = new CsvSaveOptions();
 options.setColumnSeparator(";");
 options.setRowSeparator("\r\n");
 options.setCellSeparator('"');
 options.setValueQuoteType(ValueQuoteType.Always);
 workbook.save("path/to/output.csv", options);
 </code></pre></div>
</section>
</li>
</ul>
</section>
</li>
<!-- ============ METHOD DETAIL ========== -->
<li>
<section class="method-details" id="method-detail">
<h2>Method Details</h2>
<ul class="member-list">
<li>
<section class="detail" id="getColumnSeparator()">
<h3>getColumnSeparator</h3>
<div class="member-signature"><span class="modifiers">public final</span>&nbsp;<span class="return-type"><a class="external-link" href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang">String</a></span>&nbsp;<span class="element-name">getColumnSeparator</span>()</div>
<div class="block">Gets the column separator used when saving CSV data. <p>The column separator determines how values are separated between columns in the exported  CSV content. Use  <a href="#setColumnSeparator(java.lang.String)"><code>setColumnSeparator(String)</code></a> to change the separator before saving.</p>
<pre><code data-language="Java">
 CsvSaveOptions options = new CsvSaveOptions();
 options.setColumnSeparator(";");
 String separator = options.getColumnSeparator();
 workbook.save("path/to/output.csv", options);
 </code></pre></div>
<dl class="notes">
<dt>Returns:</dt>
<dd>The current column separator string.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="setColumnSeparator(java.lang.String)">
<h3>setColumnSeparator</h3>
<div class="member-signature"><span class="modifiers">public final</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">setColumnSeparator</span><wbr><span class="parameters">(<a class="external-link" href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang">String</a>&nbsp;value)</span></div>
<div class="block">Sets the column separator used when saving CSV data.
 <pre><code data-language="Java">
 CsvSaveOptions options = new CsvSaveOptions();
 options.setColumnSeparator(";");
 workbook.save("path/to/output.csv", options);
 </code></pre></div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>value</code> - The current column separator string.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getRowSeparator()">
<h3>getRowSeparator</h3>
<div class="member-signature"><span class="modifiers">public final</span>&nbsp;<span class="return-type"><a class="external-link" href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang">String</a></span>&nbsp;<span class="element-name">getRowSeparator</span>()</div>
<div class="block">Gets the row separator. <p>Returns the string used to separate rows when saving a workbook to a CSV file.</p>
<pre><code data-language="Java">
 CsvSaveOptions options = new CsvSaveOptions();
 options.setRowSeparator("\r\n");
 String separator = options.getRowSeparator();
 workbook.save("path/to/output.csv", options);
 </code></pre></div>
<dl class="notes">
<dt>Returns:</dt>
<dd>The row separator string.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="setRowSeparator(java.lang.String)">
<h3>setRowSeparator</h3>
<div class="member-signature"><span class="modifiers">public final</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">setRowSeparator</span><wbr><span class="parameters">(<a class="external-link" href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang">String</a>&nbsp;value)</span></div>
<div class="block">Sets the row separator. <p>Sets the string used to separate rows when saving a workbook to a CSV file.</p>
<pre><code data-language="Java">
 CsvSaveOptions options = new CsvSaveOptions();
 options.setRowSeparator("\r\n");
 workbook.save("path/to/output.csv", options);
 </code></pre></div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>value</code> - The row separator string.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getCellSeparator()">
<h3>getCellSeparator</h3>
<div class="member-signature"><span class="modifiers">public final</span>&nbsp;<span class="return-type">char</span>&nbsp;<span class="element-name">getCellSeparator</span>()</div>
<div class="block">Gets the cell separator character used when saving CSV content. <p>This character is used to enclose cell text in the exported CSV data.  The default value is  <code>'\"'</code>.</p>
<pre><code data-language="Java">
 CsvSaveOptions options = new CsvSaveOptions();
 options.setCellSeparator('\'');
 char cellSeparator = options.getCellSeparator();
 workbook.save("path/to/output.csv", options);
 </code></pre></div>
<dl class="notes">
<dt>Returns:</dt>
<dd>The cell separator character used for CSV export.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="setCellSeparator(char)">
<h3>setCellSeparator</h3>
<div class="member-signature"><span class="modifiers">public final</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">setCellSeparator</span><wbr><span class="parameters">(char&nbsp;value)</span></div>
<div class="block">Sets the cell separator character used when saving CSV content. <p>This character is used to enclose cell text in the exported CSV data.  The default value is  <code>'\"'</code>.</p>
<pre><code data-language="Java">
 CsvSaveOptions options = new CsvSaveOptions();
 options.setCellSeparator('\'');
 workbook.save("path/to/output.csv", options);
 </code></pre></div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>value</code> - The cell separator character used for CSV export.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="setSeparatorString(java.lang.String)">
<h3>setSeparatorString</h3>
<div class="member-signature"><span class="annotations"><a class="external-link" href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Deprecated.html" title="class or interface in java.lang">@Deprecated</a>
</span><span class="modifiers">public final</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">setSeparatorString</span><wbr><span class="parameters">(<a class="external-link" href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang">String</a>&nbsp;value)</span></div>
<div class="deprecation-block"><span class="deprecated-label">Deprecated.</span>
<div class="deprecation-comment">Use <a href="#getColumnSeparator()"><code>getColumnSeparator()</code></a> instead.</div>
</div>
<div class="block">Sets the column separator string. <p>This method is deprecated and Sets the same value as  <a href="#getColumnSeparator()"><code>getColumnSeparator()</code></a>. By default, the separator is a comma.</p></div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>value</code> - The column separator string.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getSeparatorString()">
<h3>getSeparatorString</h3>
<div class="member-signature"><span class="annotations"><a class="external-link" href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Deprecated.html" title="class or interface in java.lang">@Deprecated</a>
</span><span class="modifiers">public final</span>&nbsp;<span class="return-type"><a class="external-link" href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang">String</a></span>&nbsp;<span class="element-name">getSeparatorString</span>()</div>
<div class="deprecation-block"><span class="deprecated-label">Deprecated.</span>
<div class="deprecation-comment">Use <a href="#getColumnSeparator()"><code>getColumnSeparator()</code></a> instead.</div>
</div>
<div class="block">Gets the column separator string. <p>This method is deprecated and returns the same value as  <a href="#getColumnSeparator()"><code>getColumnSeparator()</code></a>. By default, the separator is a comma.</p></div>
<dl class="notes">
<dt>Returns:</dt>
<dd>The column separator string.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getEncoding()">
<h3>getEncoding</h3>
<div class="member-signature"><span class="modifiers">public final</span>&nbsp;<span class="return-type"><a class="external-link" href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang">String</a></span>&nbsp;<span class="element-name">getEncoding</span>()</div>
<div class="block">Gets the default encoding used when saving a CSV file. <p>The default encoding is  <code>utf-8</code>.</p>
<pre><code data-language="Java">
 CsvSaveOptions options = new CsvSaveOptions();
 options.setEncoding("UTF-16");
 String encoding = options.getEncoding();
 workbook.save("path/to/output.csv", options);
 </code></pre></div>
<dl class="notes">
<dt>Returns:</dt>
<dd>The default encoding name.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="setEncoding(java.lang.String)">
<h3>setEncoding</h3>
<div class="member-signature"><span class="modifiers">public final</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">setEncoding</span><wbr><span class="parameters">(<a class="external-link" href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang">String</a>&nbsp;value)</span></div>
<div class="block">Sets the default encoding used when saving a CSV file. <p>The default encoding is  <code>utf-8</code>.</p>
<pre><code data-language="Java">
 CsvSaveOptions options = new CsvSaveOptions();
 options.setEncoding("UTF-16");
 workbook.save("path/to/output.csv", options);
 </code></pre></div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>value</code> - The default encoding name.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getValueQuoteType()">
<h3>getValueQuoteType</h3>
<div class="member-signature"><span class="modifiers">public final</span>&nbsp;<span class="return-type"><a href="ValueQuoteType.html" title="enum class in com.grapecity.documents.excel">ValueQuoteType</a></span>&nbsp;<span class="element-name">getValueQuoteType</span>()</div>
<div class="block">Gets how values are quoted in the exported text file. <p>This option controls the quoting behavior used when saving CSV content.  If  <a href="#getQuoteColumns()"><code>getQuoteColumns()</code></a> is set, this setting is ignored.</p>
<pre><code data-language="Java">
 CsvSaveOptions options = new CsvSaveOptions();
 options.setValueQuoteType(ValueQuoteType.Always);
 ValueQuoteType quoteType = options.getValueQuoteType();
 workbook.save("path/to/output.csv", options);
 </code></pre></div>
<dl class="notes">
<dt>Returns:</dt>
<dd>The value quoting mode for exported text files.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="setValueQuoteType(com.grapecity.documents.excel.ValueQuoteType)">
<h3>setValueQuoteType</h3>
<div class="member-signature"><span class="modifiers">public final</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">setValueQuoteType</span><wbr><span class="parameters">(<a href="ValueQuoteType.html" title="enum class in com.grapecity.documents.excel">ValueQuoteType</a>&nbsp;value)</span></div>
<div class="block">Sets how values are quoted in the exported text file. <p>Use this property to control the quoting behavior for CSV export, such as quoting all values,  quoting only values that contain special characters, or not quoting values. If  <a href="#getQuoteColumns()"><code>getQuoteColumns()</code></a> is set, this setting is ignored during export.</p>
<pre><code data-language="Java">
 CsvSaveOptions options = new CsvSaveOptions();
 options.setValueQuoteType(ValueQuoteType.Normal);
 workbook.save("path/to/output.csv", options);
 </code></pre></div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>value</code> - The value quoting mode to apply. If <a href="#getQuoteColumns()"><code>getQuoteColumns()</code></a> is set, this value is ignored during CSV export. Null behavior is not specified.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getTrimLeadingBlankRowAndColumn()">
<h3>getTrimLeadingBlankRowAndColumn</h3>
<div class="member-signature"><span class="modifiers">public final</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">getTrimLeadingBlankRowAndColumn</span>()</div>
<div class="block">Gets whether leading blank rows and columns are trimmed when saving to CSV. <p>This property indicates whether leading blank rows and columns are trimmed in the same way as  Microsoft Excel during CSV export. The default value is  <code>true</code>.</p>
<pre><code data-language="Java">
 CsvSaveOptions options = new CsvSaveOptions();
 options.setTrimLeadingBlankRowAndColumn(false);
 boolean trim = options.getTrimLeadingBlankRowAndColumn();
 workbook.save("path/to/output.csv", options);
 </code></pre></div>
<dl class="notes">
<dt>Returns:</dt>
<dd><code>true</code> if leading blank rows and columns are trimmed during CSV export; otherwise, <code>false</code>.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="setTrimLeadingBlankRowAndColumn(boolean)">
<h3>setTrimLeadingBlankRowAndColumn</h3>
<div class="member-signature"><span class="modifiers">public final</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">setTrimLeadingBlankRowAndColumn</span><wbr><span class="parameters">(boolean&nbsp;value)</span></div>
<div class="block">Sets whether leading blank rows and columns are trimmed when saving to CSV. <p>This property indicates whether leading blank rows and columns are trimmed in the same way as  Microsoft Excel during CSV export. The default value is  <code>true</code>.</p>
<pre><code data-language="Java">
 CsvSaveOptions options = new CsvSaveOptions();
 options.setTrimLeadingBlankRowAndColumn(false);
 workbook.save("path/to/output.csv", options);
 </code></pre></div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>value</code> - <code>true</code> if leading blank rows and columns are trimmed during CSV export; otherwise, <code>false</code>.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getEscapeFormulaLikeValues()">
<h3>getEscapeFormulaLikeValues</h3>
<div class="member-signature"><span class="modifiers">public final</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">getEscapeFormulaLikeValues</span>()</div>
<div class="block">Gets whether CSV values that begin with formula-like characters are escaped during export. <p>When this property is set to  <code>true</code>, values that start with  <code>=</code>,  <code>+</code>,  <code>-</code>,  <code>@</code>, their full-width variants, tab, carriage return, or line feed are written  with a leading apostrophe. The default value is  <code>false</code>.</p>
<pre><code data-language="Java">
 CsvSaveOptions options = new CsvSaveOptions();
 options.setEscapeFormulaLikeValues(true);
 boolean escape = options.getEscapeFormulaLikeValues();
 workbook.save("path/to/output.csv", options);
 </code></pre></div>
<dl class="notes">
<dt>Returns:</dt>
<dd><code>true</code> if formula-like CSV values are escaped during export; otherwise, <code>false</code>.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="setEscapeFormulaLikeValues(boolean)">
<h3>setEscapeFormulaLikeValues</h3>
<div class="member-signature"><span class="modifiers">public final</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">setEscapeFormulaLikeValues</span><wbr><span class="parameters">(boolean&nbsp;value)</span></div>
<div class="block">Sets whether CSV values that begin with formula-like characters are escaped during export. <p>When this property is set to  <code>true</code>, values that start with  <code>=</code>,  <code>+</code>,  <code>-</code>,  <code>@</code>, their full-width variants, tab, carriage return, or line feed are written  with a leading apostrophe. The default value is  <code>false</code>.</p>
<pre><code data-language="Java">
 CsvSaveOptions options = new CsvSaveOptions();
 options.setEscapeFormulaLikeValues(true);
 workbook.save("path/to/output.csv", options);
 </code></pre></div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>value</code> - <code>true</code> if formula-like CSV values are escaped during export; otherwise, <code>false</code>.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="setQuoteColumns(int[])">
<h3>setQuoteColumns</h3>
<div class="member-signature"><span class="modifiers">public final</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">setQuoteColumns</span><wbr><span class="parameters">(int[]&nbsp;value)</span></div>
<div class="block">Sets the zero-based column indices that are configured to be quoted during CSV export.
 <pre><code data-language="Java">
 CsvSaveOptions options = new CsvSaveOptions();
 options.setQuoteColumns(new int[] { 1, 3, 4 });
 workbook.save("path/to/output.csv", options);
 </code></pre></div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>value</code> - An array of zero-based column indices to quote, or <code>null</code> if no specific columns have been configured.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getQuoteColumns()">
<h3>getQuoteColumns</h3>
<div class="member-signature"><span class="modifiers">public final</span>&nbsp;<span class="return-type">int[]</span>&nbsp;<span class="element-name">getQuoteColumns</span>()</div>
<div class="block">Gets the zero-based column indices that are configured to be quoted during CSV export. <p>When  <a href="#setQuoteColumns(int%5B%5D)"><code>setQuoteColumns(int[])</code></a> is used, only the specified columns are forced to use the cell separator as quotes, while other columns are not quoted unless required by the CSV  content. Invalid column indices are preserved in this array, but they have no effect during  export.</p>
<pre><code data-language="Java">
 CsvSaveOptions options = new CsvSaveOptions();
 options.setQuoteColumns(new int[] { 1, 3, 4 });
 int[] quoteColumns = options.getQuoteColumns();
 workbook.save("path/to/output.csv", options);
 </code></pre></div>
<dl class="notes">
<dt>Returns:</dt>
<dd>An array of zero-based column indices to quote, or <code>null</code> if no specific columns have been configured.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="toString()">
<h3>toString</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a class="external-link" href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang">String</a></span>&nbsp;<span class="element-name">toString</span>()</div>
<div class="block">Returns a string representation of these CSV save options.</div>
<dl class="notes">
<dt>Overrides:</dt>
<dd><code><a class="external-link" href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#toString()" title="class or interface in java.lang">toString</a></code>&nbsp;in class&nbsp;<code><a class="external-link" href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang">Object</a></code></dd>
<dt>Returns:</dt>
<dd>A string representation of these CSV save options.</dd>
</dl>
</section>
</li>
</ul>
</section>
</li>
</ul>
</section>
<!-- ========= END OF CLASS DATA ========= -->
<script>var evenRowColor = "even-row-color";
var oddRowColor = "odd-row-color";
var tableTab = "table-tab";
var activeTableTab = "active-table-tab";

function show(tableId, selected, columns) {
    if (tableId !== selected) {
        document.querySelectorAll('div.' + tableId + ':not(.' + selected + ')')
            .forEach(function (elem) {
                elem.style.display = 'none';
            });
    }
    document.querySelectorAll('div.' + selected)
        .forEach(function (elem, index) {
            elem.style.display = '';
            var isEvenRow = index % (columns * 2) < columns;
            elem.classList.remove(isEvenRow ? oddRowColor : evenRowColor);
            elem.classList.add(isEvenRow ? evenRowColor : oddRowColor);
        });
    updateTabs(tableId, selected);
}

function updateTabs(tableId, selected) {
    document.querySelector('div#' + tableId + ' .summary-table')
        .setAttribute('aria-labelledby', selected);
    document.querySelectorAll('button[id^="' + tableId + '"]')
        .forEach(function (tab, index) {
            if (selected === tab.id || (tableId === selected && index === 0)) {
                tab.className = activeTableTab;
                tab.setAttribute('aria-selected', true);
                tab.setAttribute('tabindex', 0);
            } else {
                tab.className = tableTab;
                tab.setAttribute('aria-selected', false);
                tab.setAttribute('tabindex', -1);
            }
        });
}

function switchTab(e) {
    var selected = document.querySelector('[aria-selected=true]');
    if (selected) {
        if ((e.keyCode === 37 || e.keyCode === 38) && selected.previousSibling) {
            // left or up arrow key pressed: move focus to previous tab
            selected.previousSibling.click();
            selected.previousSibling.focus();
            e.preventDefault();
        } else if ((e.keyCode === 39 || e.keyCode === 40) && selected.nextSibling) {
            // right or down arrow key pressed: move focus to next tab
            selected.nextSibling.click();
            selected.nextSibling.focus();
            e.preventDefault();
        }
    }
}
</script></div>