我正在尝试将一堆A文件从ASCII转换成UTF-8。

为此,我尝试使用iconv:

iconv -f US-ASCII -t UTF-8 infile > outfile

-f ENCODING输入的编码

-t ENCODING输出的编码

但那个文件没有转换成UTF-8。这是一个.dat文件。

在发布这篇文章之前,我搜索了谷歌并找到了如下信息:

ASCII is a subset of UTF-8, so all ASCII files are already UTF-8 encoded. The bytes in the ASCII file and the bytes that would result from"encoding it to UTF-8" would be exactly the same bytes. There's no difference between them.

强制从US-ASCII编码到UTF-8(ICONV)

在字符集之间转换文本文件的最佳方法?

但是上面的链接没有帮助。

尽管它是ASCII格式的,但它将支持UTF-8,因为UTF-8是一个超级集,从我这里接收文件的另一方需要文件编码为UTF-8。他只需要UTF-8格式的文件。

有什么建议吗?

一点也不清楚问题是什么——只要给那个人原始的ASCII文件就行了。如果它们是真正的ASCII码,那么它们已经是UTF-8码了,所以应该没问题。到底怎么了?

@另一方jon skeet希望文件格式为utf-8,当我尝试使用命令文件-i outfile时,它返回的是ascii,但他们严格要求它为utf-8。即使ASCII是UTF-8的子集。

如果它是真正的ASCII码,那么它是"严格的UTF-8"。根据你的评论,如果对方因为file的输出而拒绝使用ASCII文件,这听起来就好像对方基本上已经崩溃了。他们应该接受ASCII文件是UTF-8文件,然后继续处理它。

@在没有其他细节的情况下,我倾向于同意。建议和鼓励他们接受来自"文件"的两个回复可能是值得的。他们的API将更加灵活和健壮,他们将避免自己不得不与使用它的其他人反复讨论这个问题。如果他们不能或不愿意这样做,那么在他们的文档中至少有一个非常明确的声明,即输入文件中需要BOM,使用这种精确的语言,也可能会有很长的路要走。

我对这个问题有点困惑,因为正如您所指出的,ASCII是UTF-8的一个子集,所以所有的ASCII文件都已经是UTF-8编码的。

如果您正在向另一方发送只包含ASCII字符的文件,但另一方抱怨它们不是"UTF-8编码的",那么我猜它们是指ASCII文件没有明确指示内容是UTF-8的字节顺序标记这一事实。

如果确实如此,那么可以使用下面的答案添加字节顺序标记:

ICONV:使用BOM从Windows ANSI转换为UTF-8

如果另一方表示不需要"bom"(字节顺序标记),但仍在抱怨文件不是utf-8,则另一种可能是初始文件实际上不是ASCII,而是包含使用ANSI或ISO-8859-1编码的字符。

在RAM对使用"file"命令查找类型的另一方作出评论后,编辑以添加以下实验

Tims-MacBook-Pro:~ tjohns$ echo 'Stuff' > deleteme

Tims-MacBook-Pro:~ tjohns$ cat deleteme

Stuff

Tims-MacBook-Pro:~ tjohns$ file -I deleteme

deleteme: text/plain; charset=us-ascii

Tims-MacBook-Pro:~ tjohns$ echo -ne '\xEF\xBB\xBF' > deleteme

Tims-MacBook-Pro:~ tjohns$ echo 'Stuff' >> deleteme

Tims-MacBook-Pro:~ tjohns$ cat deleteme

Stuff

Tims-MacBook-Pro:~ tjohns$ file -I deleteme

deleteme: text/plain; charset=utf-8

提摩西·约翰斯谢谢你的解释。其他缔约方使用文件格式检查文件——我将文件输入ASCII,因为它们像UTF-8一样需要进一步处理。

@Ram in that case I'm about 98%certain the other party is looking for the Byte order Mark.On Mac Os file will output"text/plain;charset=UTF-8"if it's there,and"text/plain;charset=US-ASCII"if it's not.我会编辑答案,以增加一个实验。

Hi@timothy Johns I was working in Linux Environment.他们为UTF-8提出的理由是,他们希望得到更多的特征支持,而这些特征在美国信息交换标准码中是不可用的。Please note that all this is to process the data in hadoop(data world).

提摩西·约翰斯谢谢你的输入。我试着使用下面的命令并将它转换为UTF-8格式的ASCII文件。输出文件;当我给ASCII输入文件时,它是返回我UTF-8输出文件。

linux 文件转换ascii,关于linux:如何将文件从ASCII转换为UTF-8?相关推荐

  1. wp文件转shp_完美实现从mapGIS文件转换成ArcGIS中shp格式文件

    完美实现从 mapGIS 文件转换成 ArcGIS 中 shp 格式文件 最近经苦战实验,终于找到如何完美实现从 mapGIS 文件转换成 ArcGIS 中 shp 格式文件.步骤如下(各步骤中细节操 ...

  2. Linux把日志文件转换成xml,[转载]将 HTML 文件转换成 XML

    在 Java 专家 Michael Geisler 为 Builder 澳大利亚写的第一篇文章中,他向读者展示了如何使用 JTidy 将 HTML 文件转换成 XML. 有关 Java 的最重要的事情 ...

  3. 【PDF转换图片】如何把pdf文件转换成图片?如何把批量pdf文件转换成图片?如何把多目录批量pdf文件转换成图片?如何pdf文件转换成图片不失真不损失清晰度?今天教方法

    在工作中常常需要将PDF转换为图片,好多免费但是图片有水印和功能不全的问题. 还有市面上很多软件知识完成了部分的工作,比如只能单个文件转PDF,那么遇到多文件的就只能挨个转么? 还有转换的格式支持的非 ...

  4. 如何将高版本的cad文件转换成低版本的cad文件

    高版本的CAD如果直接保存,低版本的CAD就出现这样的不兼容问题而打不开.鉴于CAD工程图纸需要频繁的交流,这样十分不利于高效作图与工程图纸的沟通,但自己不想安装高版本的CAD,怎样才能快速.便捷地阅 ...

  5. bin文件转换成html,怎么样把BIN文件转换成ISO文件

    ISO文件:就是以iso为扩展名的文件,它是iso9660文件格式,一种光盘(CD)上的文件系统格式.简单地说,就是数据在数据光盘上的组织形式: 它的特点是: 1)最多只包含8级子目录(可以用Rock ...

  6. linux ppk文件,如何使用远程linux系统中ssh秘钥文件转换成putty可以使用的ppk文件...

    使用OpenSSH生成密钥密钥既可使用putty生成,也可用OpenSSH生成.1.Linux下生成密钥运行: 引用 # ssh-keygen -t rsa Generating public/pri ...

  7. linux下iso8859乱码,在Linux上转换UTF-8和ISO-8859之间的文件

    每当我遇到Unicode时,都没有用.我在 Linux上,我从Windows获得这些文件: $file * file1: UTF-8 Unicode text file2: ISO-8859 text ...

  8. linux分区转换gpt命令,Linux中磁盘如何转换GPT格式

    Fdisk命令虽然很交互,操作也方便,但是对于大于2T的磁盘无法操作, 假如我们想用大于2T的磁盘怎么办?可以把磁盘转化为GPT格式. GPT格式的磁盘相当于原来MBR磁盘中原来保留4个partiti ...

  9. php silk文件转换pcm,微信语音silk格式文件转换处理记录

    @(随笔记录)[微信语音|silk|mp3|wav] 日期:2018年08月01日 环境:MacBook Pro,macOS High Sierra 10.13.5(17F77) 引言: 奶奶八十多了 ...

  10. 如何利用ArcGIS将shp文件转换成CAD可用的dwg文件

    对于使用CAD的用户而言,*.shp格式的文件不能够直接加载使用,那么现在小编就教大家如何利用ArcGIS将水经注谷歌地球高程下载器生成的*.shp转换成CAD可编辑的*.dwg文件,希望对大家有所帮 ...

最新文章

  1. java Class类与反射
  2. 《统计学》学习笔记之参数估计
  3. 突破开源Redis的内存限制,存算分离的GaussDB到底有多能“装”?
  4. python 二叉树中所有距离为k的节点_Redis:从应用到底层,一文帮你搞定
  5. Azure Services Bus(服务总线)中的工作流(workflow)
  6. Pytorch Note19 优化算法5 Adadelta算法
  7. Serv-U FTP - v15.3.1.155特别版
  8. 数学连乘和累加运算符号_数学所有的公式和符号
  9. python做一个qq聊天窗口_python实现qq聊天(带界面)
  10. 2006年网络名言100句(转)
  11. 《大道至简》,悟在天成——读后有感
  12. 淘宝/天猫、1688、京东按图搜索淘宝商品(拍立淘)API接口
  13. 高仿腾讯QQ即时通讯IM项目
  14. 基于C++和OpenCV的中心线提取算法
  15. 如何给MySQL 数据瘦身
  16. 短视频制作小技巧,配音字幕都要跟上,做好细节才能成功
  17. 移动端点击a标签后默认蓝色背景如何去除
  18. 冰刃·笔记 | 勒索病毒的10%和90%等式
  19. 计算机动态图显示原理,30张传感器工作原理动态图
  20. VSCode 如何设置启动时打开上次关闭时在编辑的文件

热门文章

  1. 浙大计算机考研导学,2016届浙大计算机考研复习经验整理
  2. deepin efi 启动u盘_deepin启动引导修复教程
  3. loadRunner通过谷歌浏览器代理录制脚本
  4. 怎样看计算机显卡等信息,如何看电脑显卡信息 如何判断显卡性能的好坏
  5. 2021.9.15 每日总结
  6. [精品教程,新老鸟必读]:极限装机、优化全攻略(新手优化教程)
  7. webpackjsonp 还原_EST:微生物介导下砷还原及其在铁氧化物上吸附/解吸耦合反应动力学模型...
  8. linux网卡驱动内核文件目录,LINUX内核升级更新网卡驱动
  9. 扫描二维码报修公司电脑
  10. 用计算机刻录光盘,刻录光盘,教您如何使用计算机将文件刻录到光盘上.