【问题标题】:CSV field delimiter problemCSV 字段分隔符问题
【发布时间】:2009-09-11 12:45:19
【问题描述】:

此 CSV 文件的字段分隔符为 $
它看起来像这样:

14$"ALL0053"$$$"A"$$$"Direct Deposit in FOGSI A/c"$$"DR"$"DAS PRADIP ...

如何将文件视为列,每个字段都显示为表格中的列。

我试过很多方法,都不行。有人知道怎么做吗?

我正在使用 Ubuntu

【问题讨论】:

  • 这不是真正的 CSV。我想你可以称之为 DSV(美元分离!)

标签: csv delimiter


【解决方案1】:

这是一个奇怪的 CSV。由于逗号分隔的文件通常由逗号分隔。我认为您需要做的就是使用任何文本编辑器中可用的简单查找/替换。

Gnome Edit 中打开文件并在Edit > Replace... 下查看

从那里您可以指定用,s 替换所有$s

一旦您的文件是真正的 CSV,您就可以在 Open Office Calc(电子表格)或任何其他适用于 Ubuntu (GNOME) 的电子表格程序中打开它。

【讨论】:

    【解决方案2】:
    cut -d $ -f 1,2,...x filename | sed 's/\$/ /g'
    

    如果您只想要特定的列,并且不想看到 $

    sed 's/\$/ /g' filename
    

    如果您只想将 $ 替换为空格

    【讨论】:

    • 这实际上并没有做任何事情......你不妨调用 cat。
    【解决方案3】:

    在 ubuntu 中右键单击文件打开方式.. 然后 OpenOffice Calc。然后您应该会看到一个对话框,询问分隔符等。取消选中逗号,然后在“其他”字段中键入 $。然后点击确定,它会为你导入它。

    没有

    【讨论】:

      【解决方案4】:

      作为第一次尝试:

      列 -ts'$' 路径

      但这不能很好地处理空字段,所以用这个丑陋的 hack 来解决这个问题:

      sed 's/\$\$/$ $/g' 路径 |列-ts$

      【讨论】:

        猜你喜欢
        • 2014-10-31
        • 2015-01-06
        • 1970-01-01
        • 2011-06-16
        • 2015-11-01
        • 1970-01-01
        • 1970-01-01
        • 2013-10-16
        • 1970-01-01
        相关资源
        最近更新 更多