Skip to main content

Search OfficeIMO

Enter a topic, API type, or PowerShell command.

Documentation Search all OfficeIMO/
Cmdlet

ConvertTo-OfficeCsv

Module
PSWriteOffice
Inputs
OfficeIMO.CSV.CsvDocument System.Object
Outputs
System.String

Converts objects or a CSV document into CSV text.

Syntax

ConvertTo-OfficeCsv
[-Culture <CultureInfo>]
[-DateTimeFormat <String>]
[-Delimiter <String>]
[-FormulaInjectionPolicy <Preserve|Escape>]
-InputObject <Object>
[-MaxCollectionItems <Int32>]
[-MaxNestingDepth <Int32>]
[-NewLine <String>]
[-NoHeader]
[-NullValue <String>]
[-QuoteFields <String[]>]
[-UseQuotes <AsNeeded|Always|Never>]
[-UseUtc]
[<CommonParameters>]
#
Parameter set: InputObject
ConvertTo-OfficeCsv
[-Culture <CultureInfo>]
[-DateTimeFormat <String>]
[-FormulaInjectionPolicy <Preserve|Escape>]
-InputObject <Object>
[-MaxCollectionItems <Int32>]
[-MaxNestingDepth <Int32>]
[-NewLine <String>]
[-NoHeader]
[-NullValue <String>]
[-QuoteFields <String[]>]
[-UseCulture]
[-UseQuotes <AsNeeded|Always|Never>]
[-UseUtc]
[<CommonParameters>]
#
Parameter set: InputObjectCulture

Description

Use Export-OfficeCsv when the destination is a file.

Examples

Convert objects to CSV text.

$csv = $data | ConvertTo-OfficeCsv

Generates CSV text from the input objects.

Export with a stable schema order.

$rows = @(
  [ordered]@{ Id = 1; Name = 'Alpha'; Total = 10.5 },
  [ordered]@{ Id = 2; Name = 'Beta'; Total = 7.25 }
)
$csv = $rows | ConvertTo-OfficeCsv -Delimiter ';'

Uses ordered dictionaries to enforce column order and a custom delimiter.

Write CSV without headers.

$csv = $data | ConvertTo-OfficeCsv -NoHeader

Writes rows only when a downstream system expects headerless CSV.

Parameters

-Culture CultureInfo optional
Culture used for value formatting.
-DateTimeFormat String optional
Date/time format used for DateTime and DateTimeOffset values.
-Delimiter String optionalsets: InputObject
Field delimiter text, including multi-character separators.
-FormulaInjectionPolicy CsvFormulaInjectionPolicy optional
Controls how formula-like values are written.
Possible values: Preserve, Escape
-InputObject Object requiredpipeline: True (ByValue)aliases: Document
Objects to convert into CSV rows, or a CsvDocument to serialize (alias Document).
-MaxCollectionItems Int32 optional
Maximum number of items allowed in one nested collection or dictionary field. Defaults to 1,048,575; increase explicitly for trusted larger values.
-MaxNestingDepth Int32 optional
Maximum nesting depth allowed while normalizing one field value. Defaults to 64; increase explicitly for trusted deeper values.
-NewLine String optional
Override the newline sequence.
-NoHeader SwitchParameter optional
Omit the header row from the output.
-NullValue String optional
Token written for null values.
-QuoteFields String[] optional
Field names that should always be quoted when UseQuotes is AsNeeded.
-UseQuotes CsvQuoteMode optional
Controls when CSV fields are quoted. Defaults to quoting only fields that need it.
Possible values: AsNeeded, Always, Never
-UseUtc SwitchParameter optional
Convert date/time values to UTC before formatting.
-UseCulture SwitchParameter optionalsets: InputObjectCulture
Use the list separator from the selected or current culture as the delimiter.

Common Parameters

This command supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable.

For more information, see about_CommonParameters.