`
qcyycom
  • 浏览: 188794 次
社区版块
存档分类
最新评论

Linux系统中关于文件编码以及编码的转换

 
阅读更多

为了与windows兼容,SecureCRT中文件编码的默认配置是”Default”,其实也就是GBK。如果我们将其更改为了”UTF-8″,那么我们查看从windows中scp过去的GBK文件就会变成乱码,需要进行转换,比较麻烦。

不过有时候我们也需要进行编码的转换,比如这次我这次在建立cacti的模板的时候使用了中文,apache默认是UTF-8的编码,所以记录到mysql数据库中的就是UTF-8的编码了(奇怪的是,在mysql中使用”set names utf-8″看不到正确的中文,需要使用”hex()”函数来看二进制,数一下字符数量,看是不是utf-8…..)。而当我使用批量添加主机的脚本来添加新服务器信息到数据库后,发现在网页中出现了乱码。原因是在cli中使用脚本的话,中文是使用GBK的格式保存到数据库中的。于是变成了很郁闷的情况,无论将浏览器编码设置为”UTF-8″还是”GB2312″,总会有一部分中文是乱码的。

解决的方法,不是将原来的模板的中文都转换成gb2312,就是要将以后添加的主机信息里面的中文转换成UTF-8。因为我比较喜欢UTF-8一点,所以我决定用后一种方法。

linux里面转换编码的方法很多,google了一下,一般的人都是用”iconv”命令来进行转换。但是由于我需要在脚本里面判断文件的编码,”iconv”就不太适用。其实Linux里面还有另一个能进行编码转换,并比”iconv”功能强大的”enca”。

debian中的安装:

aptitude install enca

使用方法:

enca -L zh_CN file 检查文件的编码

enca -L zh_CN -x UTF-8 file 将文件编码转换为"UTF-8"编码

enca -L zh_CN -x UTF-8 < file1 > file2 如果不想覆盖原文件可以这样

除了有检查文件编码的功能以外,”enca”还有一个好处就是如果文件本来就是你要转换的那种编码,它不会报错,还是会print出结果来,而”iconv”则会报错。这对于脚本编写是比较方便的事情。



FROM: http://news.newhua.com/news1/programming/2008/130/0813015216D0GAD73EJEFE38BCE5E4.html

分享到:
评论

相关推荐

    Linux查看文件编码格式及文件编码转换

    ### Linux文件编码转换 在Linux环境下,有时候需要对文件的编码进行转换以适应不同的应用场景或需求。以下是几种常见的文件编码转换方法: #### 使用Vim转换文件编码 1. **直接在Vim中转换**:打开文件后,可以在...

    Linux下查看文件编码,文件编码格式转换和文件名编码.doc

    总结来说,本文介绍了 Linux 中查看文件编码、文件编码转换和文件名编码转换的方法,并对 Vim 的编码方式设置做了详细的介绍。这些知识点对于解决 Linux 和 Windows 之间的文件编码问题非常重要。

    mac文件编码转换

    在Mac操作系统中,文件编码转换是一项重要的任务,尤其对于处理包含不同字符集的文本文件时。常见的文件类型如txt、xml、css、htm、html、php、jsp等,它们可能因开发环境或语言设定的不同而采用不同的编码方式,如...

    linux转化windows文件编码格式脚本

    Linux 转换 Windows 文件编码格式脚本是将 Windows 上的文件编码格式转换为 UTF-8 编码,以便在移植 Windows 代码到 Linux 下时避免注释代码乱码和编码格式引起的编译错误。 该脚本使用 Bash shell 脚本语言编写,...

    linux 查看文件编码

    在Linux系统中,查看文件编码是一项非常基础但重要的任务,特别是在处理文本文件、脚本或者进行跨平台数据传输时。本文将深入探讨如何在Linux环境下识别和检查文件的字符编码,以便正确理解和处理这些文件。 首先,...

    关于linux编码转换的DOC文档

    本文主要围绕Linux系统中如何进行编码转换,特别是针对与Windows系统之间的交互进行讨论。 首先,Windows系统默认的文件编码格式是GBK(也称为GB2312),这是一种简体中文的字符编码。相比之下,Linux系统中更倾向...

    文件编码批量转换工具(不用积分)

    项目中有很多文件因为编码的原因导致用户使用的时候看到的是乱码,或是不兼容的情况,网上找了一圈 也没有适合咱程序员的转码的工具,所以写了一个批量转换工具 虽然已经使用在我司生产项目中,但还是建议你转换前...

    批量字符编码转换工具,批量转换文件编码 超级批量编码转换

    批量转换文件编码 超级批量编码转换 批量转换编码 编码批量转换工具 批量转换txt编码 linux 批量转换编码 编码格式批量转换 php 字符编码转换 字符编码转换 java 字符编码转换

    iconv-文件编码转换

    在信息技术领域,文件编码转换是一个重要的任务,特别是在处理不同系统、不同语言或不同软件之间的数据交换时。`iconv` 是一个广泛使用的命令行工具,用于在各种字符编码之间进行转换,确保数据的正确性和可读性。这...

    Ubuntu Linux系统下文件编码转换的技巧

    Ubuntu Linux 系统下文件编码转换的技巧 Ubuntu Linux 系统下文件编码转换是一个常见的问题,对于程序员和开发者来说尤其重要。在 Ubuntu 系统下,默认的文件编码是 utf-8 的,但是有些时候,我们需要把文件从默认...

    文件编码转换工具java

    标题中的“文件编码转换工具java”表明这是一款基于Java编程语言开发的应用,主要功能是进行文件编码的转换。在IT领域,文件编码是至关重要的,不同的编码格式适用于不同的语言和平台,例如ASCII、UTF-8、GBK等。这...

    文字编码转换工具

    本文将深入探讨“文字编码转换工具”的重要性、原理以及它支持的各种编码格式,如Native、Unicode(包括UTF-8)等。 首先,让我们了解什么是文字编码。在计算机中,文字是以二进制的形式存在的,而文字编码就是将...

    文本文件编码批量转换工具

    2. **跨平台兼容性**:在Windows和Linux等不同操作系统间传输文件,可能需要调整编码以避免乱码。 3. **网站内容迁移**:在更换网站服务器或内容管理系统时,可能需要将旧的GBK编码文件转换为更适合国际化标准的UTF-...

    linux下的base64编码转换工具及源码

    在Linux操作系统中,Base64是一种广泛使用的编码技术,它将任意二进制数据转换为可打印的ASCII字符,主要用于在网络上传输数据时避免非ASCII字符的问题。Base64编码的基本原理是将每3个字节(24位)的数据转换成4个6...

    Linux字符集编码转换.docx

    Linux 字符集编码转换是一个非常重要的概念,在 Linux 操作系统中,字符集编码转换是必备的知识。本文将从基础概念开始,逐步引导读者了解字符集编码转换的相关知识。 首先,让我们了解什么是 ASCII 编码。ASCII ...

    Linux到WINDOWS文本文件转换程序

    标题中的“Linux到WINDOWS文本文件转换程序”是指一个工具或脚本,它的主要功能是将按照Linux文本格式编码的文件转换成符合Windows文本格式的文件。在Linux系统中,每行文本的结束是以一个换行符(LF)表示的,而在...

    在Linux系统中修改文本的字符编码的方法.docx

    在我们在我们的 Linux 系统所支持的编码里面选定了目标编码之后,运行下面的命令来完成编码转换: ``` $ iconv -f old_encoding -t new_encoding filename ``` 例如,把 iso-8859-1 编码转换为 utf-8 编码: ``` ...

    UTF-8与GB2312文件编码转换(支持批量文件)

    这些库文件表明,该工具可能不仅仅局限于文件编码转换,还可能涉及到网络通信、数据库操作等复杂功能。通过这些库,工具能够实现高效稳定的操作,并具有良好的跨平台能力。 总而言之,这个基于Qt5.9开发的文件编码...

Global site tag (gtag.js) - Google Analytics