Questions tagged «utf-8»

UTF-8是一种字符编码,它使用一个到四个字节的字节序列来描述每个Unicode代码点。它与ASCII向后兼容,同时仍支持所有Unicode代码点的表示。

16
UTF-8贯穿始终
我正在设置一个新服务器,并希望在我的Web应用程序中完全支持UTF-8。我过去曾在现有服务器上尝试过此操作,但最终似乎总是不得不退回到ISO-8859-1。 我到底需要在哪里设置编码/字符集?我知道我需要配置Apache,MySQL和PHP来执行此操作-是否可以遵循一些标准清单,或者对出现不匹配的地方进行故障排除? 这是用于运行Linux 5,PHP,5和Apache 2的新Linux服务器。
1191 php  mysql  linux  apache  utf-8 



30
使用UTF8编码的Excel转换为CSV [关闭]
关闭。此问题不符合堆栈溢出准则。它当前不接受答案。 想改善这个问题吗? 更新问题,使其成为Stack Overflow 的主题。 4个月前关闭。 我有一个包含一些西班牙语字符(波浪号等)的Excel文件,我需要将其转换为CSV文件以用作导入文件。但是,当我执行“另存为CSV”时,它会处理不是ASCII字符的“特殊”西班牙字符。这似乎也用左引号和右引号以及长破折号来完成,这些引号似乎来自在Mac中创建Excel文件的原始用户。 由于CSV只是一个文本文件,因此我确定它可以处理UTF8编码,因此我猜测它是Excel的局限性,但我正在寻找一种从Excel转换为CSV并保留非ASCII字符的方法完整。
606 excel  encoding  csv  utf-8 

7
为什么现代的Perl默认情况下会避免使用UTF-8?
我想知道为什么大多数使用Perl构建的现代解决方案默认情况下都不启用UTF-8。 我知道核心Perl脚本有很多遗留问题,可能会破坏事情。但是,从我的角度来看,在21 日的世纪,新的大项目(或具有大的方面讲项目)应该从头开始他们的软件UTF-8的证明。我仍然看不到它的发生。例如,Moose启用严格和警告,但不启用Unicode。Modern :: Perl也减少了样板,但没有UTF-8处理。 为什么?有什么理由在2011年的现代Perl项目中避免使用UTF-8? 评论@tchrist太长了,因此我在这里添加它。 看来我没有说清楚。让我尝试添加一些内容。 我和tchrist的情况非常相似,但是我们的结论完全相反。我同意,Unicode的情况很复杂,但这就是为什么我们(Perl用户和编码人员)需要一些层(或编译指示)的原因,这使得UTF-8处理如今必须像现在一样容易。 tchrist指出了要涵盖的许多方面,我将在几天甚至几周内阅读并考虑它们。不过,这不是我的意思。tchrist试图证明“启用UTF-8”没有唯一的方法。我没有太多知识可以与之争论。因此,我坚持使用实例。 我打得四处Rakudo和UTF-8只是有我需要的。我没有任何问题,一切正常。也许在某个更深层次的地方有一些限制,但是一开始,我测试的所有内容都按预期工作。 那不是现代Perl 5的目标吗?我更强调的是:我不建议UTF-8作为Perl核心默认字符集,我建议触发它的可能性与一个单元为那些谁开发新的项目。 另一个例子,但带有更负面的语气。框架应该使开发更容易。几年前,我尝试了Web框架,但是只是因为“启用UTF-8”太模糊而把它们扔掉了。我没有找到如何以及在何处钩住Unicode支持。这太耗时了,我发现走旧路更容易。现在,我看到这里有悬赏计划来解决与Mason 2 相同的问题:如何使Mason2 UTF-8干净?。因此,这是一个非常新的框架,但是将其与UTF-8一起使用需要深入了解其内部。就像一个大红色标志:停止,不要使用我! 我真的很喜欢Perl。但是处理Unicode是很痛苦的。我仍然发现自己撞墙了。tchrist用某种方式正确并回答了我的问题:新项目不会吸引UTF-8,因为在Perl 5中它太复杂了。
557 perl  unicode  utf-8 

17
在字符集之间转换文本文件的最佳方法?
在字符集之间转换文本文件的最快,最简单的工具或方法是什么? 具体来说,我需要从UTF-8转换为ISO-8859-15,反之亦然。 一切顺利:以您喜欢的脚本语言,命令行工具或其他适用于OS,网站等的实用工具进行一线处理 迄今为止最好的解决方案: 在Linux / UNIX / OS X / cygwin上: Troels Arvin建议的Gnu iconv最好用作过滤器。它似乎是普遍可用的。例: $ iconv -f UTF-8 -t ISO-8859-15 in.txt > out.txt 正如Ben指出的,有一个使用iconv的在线转换器。 Cheekysoft建议的Gnu recode(手册)将就地转换一个或几个文件。例: $ recode UTF8..ISO-8859-15 in.txt 这使用较短的别名: $ recode utf8..l9 in.txt 重新编码还支持可用于在不同的行尾类型和编码之间进行转换的表面: 将换行符从LF(Unix)转换为CR-LF(DOS): $ recode ../CR-LF in.txt Base64编码文件: $ recode ../Base64 in.txt 您也可以将它们结合在一起。 将具有Unix行结尾的Base64编码的UTF8文件转换为具有Dos行结尾的Base64编码的Latin 1文件: …


12
UTF-8,UTF-16和UTF-32
UTF-8,UTF-16和UTF-32有什么区别? 我知道它们都将存储Unicode,并且每个都使用不同数量的字节来表示字符。选择一个而不是另一个有优势吗?
486 unicode  utf-8  utf-16  utf  utf-32 

12
将utf-8文本保存在json.dumps中为UTF8,而不是\ u转义序列
样例代码: >>> import json >>> json_string = json.dumps("ברי צקלה") >>> print json_string "\u05d1\u05e8\u05d9 \u05e6\u05e7\u05dc\u05d4" 问题:这不是人类可读的。我的(智能)用户想要使用JSON转储来验证甚至编辑文本文件(我宁愿不使用XML)。 有没有一种方法可以将对象序列化为UTF-8 JSON字符串(而不是 \uXXXX)?
472 python  json  unicode  utf-8  escaping 

27
是否可以强制Excel自动识别UTF-8 CSV文件?
我正在开发应用程序的一部分,该应用程序负责将一些数据导出到CSV文件中。该应用程序始终使用UTF-8,因为它在所有级别上都具有多语言的性质。但是,在Excel中打开此类CSV文件(例如包含变音符号,西里尔字母,希腊字母)并不能达到预期的结果,例如Г„/Г¤, Г–/Г¶。而且我不知道如何强制Excel理解打开的CSV文件是以UTF-8编码的。我也尝试指定UTF-8 BOM EF BB BF,但是Excel忽略了这一点。 有什么解决方法吗? PS哪些工具的行为可能类似于Excel? 更新 我不得不说,我已经使社区与问题的表达混淆了。当我问这个问题时,我想以一种流畅,透明的方式在Excel中打开一个UTF-8 CSV文件而对用户没有任何问题的方法。但是,我使用了错误的表述,要求自动执行。这非常令人困惑,并且与VBA宏自动化冲突。对于这个问题,有两个答案是我最感激的:Alex的第一个答案https://stackoverflow.com/a/6002338/166589,我已经接受了这个答案;第二个是Mark https://stackoverflow.com/a/6488070/166589后来出现了。从可用性的角度来看,Excel似乎缺乏对用户友好的UTF-8 CSV的良好支持,因此我认为这两个答案都是正确的,并且我首先接受了Alex的答案,因为它确实表明Excel无法做到这一点。透明地 这就是我在这里自动感到困惑的地方。马克的答案为更高级的用户提供了一种更复杂的方式来达到预期的结果。两种答案都很好,但亚历克斯的答案更适合我未明确说明的问题。 更新2 在上次编辑五个月后,我注意到亚历克斯的答案由于某种原因而消失了。我真的希望这不是技术问题,并且希望现在不再讨论哪个答案更大。因此,我接受马克的回答为最佳答案。
453 excel  csv  utf-8 


9
什么是Unicode,UTF-8,UTF-16?
Unicode的基础是什么,为什么需要UTF-8或UTF-16?我已经在Google上对此进行了研究,并且也在此处进行了搜索,但我不清楚。 在VSS中进行文件比较时,有时会出现一条消息,指出两个文件具有不同的UTF。为什么会这样呢? 请简单说明。

14
如何使UTF-8在Java Webapps中工作?
我需要在Java webapp(servlet + JSP,不使用框架)中使用UTF-8来支持äöå诸如常规芬兰文字和西里尔字母等ЦжФ特殊情况。 我的设置如下: 开发环境:Windows XP 生产环境:Debian 使用的数据库:MySQL 5.x 用户主要使用Firefox2,但也使用Opera 9.x,FF3,IE7和Google Chrome访问该站点。 如何实现呢?
367 java  mysql  tomcat  encoding  utf-8 

16
设置默认的Java字符编码
如何以编程方式正确设置JVM(1.5.x)使用​​的默认字符编码? 我读过,这-Dfile.encoding=whatever曾经是使用旧JVM的方法。由于没有理由,我没有那么奢侈。 我努力了: System.setProperty("file.encoding", "UTF-8"); 并设置了属性,但似乎不会导致getBytes下面的最终调用使用UTF8: System.setProperty("file.encoding", "UTF-8"); byte inbytes[] = new byte[1024]; FileInputStream fis = new FileInputStream("response.txt"); fis.read(inbytes); FileOutputStream fos = new FileOutputStream("response-2.txt"); String in = new String(inbytes, "UTF8"); fos.write(in.getBytes());


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.