【问题标题】:Unwanted Double Quotes in .CSV File.CSV 文件中不需要的双引号
【发布时间】:2016-02-02 23:16:43
【问题描述】:

所有,尝试在此处查找此问题的 SO 财富,但找不到我正在寻找的确切内容,所以在这里:

我正在使用 SSRS 生成报告并将生成的文件保存为逗号分隔的 .CSV 文件。我需要将输出 CSV 文件中的每个字段都用双引号引起来;但是,当我在 SQL 中连接引号时,生成的 CSV 文件在每个字段周围都有三个双引号,而预期的每一侧都有一个双引号。

这是否可以仅使用 SSRS 来实现?如果可以,最明智的方法是什么?

【问题讨论】:

  • “连接 SQL 中的引号”是什么意思?听起来好像还有一步。
  • 抱歉,生成的文件根本没有双引号,除非我在 SQL 中将它们连接起来。在我完成并预览报告后,渲染显示正确,字段左侧和右侧有一组双引号;但是,当渲染导出为 CSV 时,我会在字段的每一侧显示三个双引号。
  • 您是否需要在 SSRS 报告中显示用双引号括起来的字段?还是只有 CSV 文件在字段的左侧和右侧有一组双引号的预期结果?这似乎是多余的。
  • Tom,后者 - 生成的 CSV 文件需要在字段的左侧和右侧有一组双引号。
  • 我不确定这是否可以仅通过 SSRS 并导出为 CSV 来实现。如果分隔符(在本例中为逗号)、换行符或转义单个双引号字符(这就是它们显示为三个双引号的原因),则“限定符”将包含在字段中.否则,每个字段都由逗号正确分隔,并且双引号不是定义字段所必需的。你打算用输出做什么?

标签: sql sql-server csv reporting-services export-to-csv


【解决方案1】:

由于它在双引号内呈现包含逗号的记录,您应该将默认字段分隔符更改为另一个字符(例如,“|”)。

见下文:

<Extension Name="TXT" Type="Microsoft.ReportingServices.Rendering.DataRenderer.CsvReport,Microsoft.ReportingServices.DataRendering">
            <OverrideNames>
                <Name Language="en-US">Text File</Name>
            </OverrideNames>
            <Configuration>
                <DeviceInfo>
                    <NoHeader>true</NoHeader>
                    <OutputFormat>TXT</OutputFormat>
                    <Encoding>ASCII</Encoding>
                    <FieldDelimiter>|</FieldDelimiter>
                    <ExcelMode>False</ExcelMode>
                    <Qualifier></Qualifier>
                    <FileExtension>txt</FileExtension>
                </DeviceInfo>
            </Configuration>
        </Extension>

【讨论】:

    猜你喜欢
    • 2012-12-07
    • 1970-01-01
    • 2019-01-30
    • 1970-01-01
    • 1970-01-01
    • 2017-09-28
    • 1970-01-01
    • 2017-06-13
    • 1970-01-01
    相关资源
    最近更新 更多