【问题标题】:Text encoding for sound recording copyright symbol in a .tsv file.tsv 文件中录音版权符号的文本编码
【发布时间】:2016-05-06 04:02:34
【问题描述】:

我遇到了一个问题,我无法让这个符号“℗”在 .tsv 文件中呈现。我正在使用 powershell 将数据添加到具有版权信息的 .tsv 中,因此我需要正确复制它。我使用add-content -path C:\blah 并在末尾包含-encoding 参数,但我尝试过的所有编码选择都无法呈现此录音版权符号。有人知道这是否可行吗? UTF8 和 UTF32 正确地呈现 © 符号,物有所值。还有一点好笑的是,Powershell ISE 可以正确渲染符号。

感谢您的帮助。

编辑:我现在在想这可能只是 .tsv 文件的限制?我刚刚尝试在excel中打开.tsv,将“℗”符号粘贴到一个空单元格中,当我保存并重新打开文件时,“℗”被替换为“?”。

编辑 2:如果我使用 import-csv -path -delimiter 并导入 .tsv,则该符号会在 Powershell 中正确呈现。如果可能的话,我希望它能够在 Excel 中正确呈现。我也尝试使用谷歌表格加载它,但它有同样的问题。

【问题讨论】:

  • 如果你在 PowerShell 中使用编码编写它,然后在 PowerShell 中使用相同的编码读取它,它看起来是否正确呈现?也许是您用来查看它的应用程序有问题?
  • 这不是 tsv 的限制,在 utf8 hex 中 31 09 e2 84 97 09 33 0a 转换为 1<tab>℗<tab>3
  • @Briantist 我不确定这是否满足您的问题,但是是的,我可以让符号在 PowerShell 控制台(和脚本窗口)中呈现。 Andrey,还有什么我可以尝试的可以帮助我的吗?是否可以将该字符显式输入为十六进制?也许这会有所帮助。另外,为了更多信息,我正在使用 Excel 打开 .tsv。如果我直接复制并粘贴到 Excel 中,Excel 可以正确呈现符号。
  • @MatthewGoode 也许 Excel 没有正确读取文件编码?听起来 PowerShell 正在做它应该做的事情。如果你使用 Unicode 怎么办?
  • 这个discussion 可能会有所帮助。看来这是一个Excel问题。其他程序,例如LibreOffice 和 R 对这样的文件没有任何问题。

标签: csv powershell encoding


【解决方案1】:

我认为这是一种解决方法,但最终结果是我想要的。

excel 和 .tsv、.csv 等的编码似乎存在某种类型的问题。所以我发现对我有用的是打开我想要的任何文件(在 Excel 中),保存为“Unicode .txt ",然后只需将文件扩展名从 .txt 重命名为 .tsv。该文件仍然作为 .tsv 电子表格正确打开,但无论出于何种原因,编码现在都可以正常工作,以便“℗”正确保存。看起来我只需要这样做一次,我就可以继续附加到同一个 .tsv。奇怪的解决方案,但我会接受。

澄清一下,如果我在 Excel 中将文件作为 .txt 打开,它也会保留正确的格式。我只是将扩展名更改为 .tsv,以便双击打开 Excel 而不是记事本。我相信该文件在技术上仍然保存为 Unicode .txt 文件。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-06-03
    • 1970-01-01
    • 1970-01-01
    • 2016-09-01
    • 2013-10-17
    • 1970-01-01
    • 2018-01-16
    • 1970-01-01
    相关资源
    最近更新 更多