Questions tagged «character-encoding»

字符编码是指将字符表示为一系列字节的方式。Web的字符编码在编码标准中定义。

30
如何在不手动指定编码的情况下在C#中获得字符串的一致字节表示形式?
如何转换string为byte[]在.NET(C#),而无需手动指定一个特定的编码? 我将对字符串进行加密。我可以加密而不进行转换,但是我仍然想知道为什么编码在这里起作用。 另外,为什么还要考虑编码?我不能简单地获取字符串存储在哪个字节中?为什么要依赖字符编码?







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());



5
连字符后没有换行
我希望-在逐个连字符后防止与所有浏览器兼容的换行符。 例: 我有这段文字: 3-3/8"在HTML中是这样的: 3-3/8” 问题是由于连字符,在一行的结尾附近,它会中断并换行到下一行,而不是像完整的单词一样对待它... 3- 3/8" 我尝试插入“零宽度不间断字符”,没有运气... 3-3/8” 我在Safari中看到了这一点,并认为在所有浏览器中都一样。 以下是我doctype和字符编码... <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <meta http-equiv="Content-Type" content="text/html;charset=utf-8" /> 有什么办法可以防止这些字符在连字符后换行?我不需要适用于整个页面的任何解决方案...只是我可以根据需要插入的东西,例如“零宽度不间断字符”,唯一可行的方法是。 这是一个演示。只需将框架变窄,直到线条在连字符处断开。 http://jsfiddle.net/RagKH/

18
在my.cnf中将MySQL默认字符集更改为UTF-8吗?
当前,我们在PHP中使用以下命令在应用程序中将字符集设置为UTF-8。 由于这有点麻烦,我们希望将其设置为MySQL中的默认设置。我们可以在/etc/my.cnf或其他位置执行此操作吗? SET NAMES 'utf8' SET CHARACTER SET utf8 我在/etc/my.cnf中寻找了默认的字符集,但是关于字符集的内容一无所有。 在这一点上,我执行以下操作将MySQL字符集和排序规则变量设置为UTF-8: skip-character-set-client-handshake character_set_client=utf8 character_set_server=utf8 这是解决这个问题的正确方法吗?

24
检测编码并制作一切UTF-8
我正在从各种RSS提要中读取大量文本,并将其插入数据库中。 当然,提要中使用了几种不同的字符编码,例如UTF-8和ISO 8859-1。 不幸的是,文本的编码有时会出现问题。例: “Fußball”中的“ß”在我的数据库中应如下所示:“Ÿ”。如果它是“”,则正确显示。 有时,“Fußball”中的“ß”在我的数据库中看起来像这样:“ß”。然后,当然会显示错误。 在其他情况下,“ß”另存为“ß”-因此无需进行任何更改。然后它也会显示错误。 如何避免情况2和情况3? 如何使所有内容都使用相同的编码,最好是UTF-8?什么时候必须使用utf8_encode(),什么时候必须使用utf8_decode()(很清楚效果是什么,但是什么时候必须使用这些功能?),什么时候我什么都不要做输入? 如何使所有内容都具有相同的编码?也许具有功能mb_detect_encoding()?我可以为此编写函数吗?所以我的问题是: 如何找出文字使用的编码方式? 我如何将其转换为UTF-8-不管旧的编码是什么? 这样的功能会起作用吗? function correct_encoding($text) { $current_encoding = mb_detect_encoding($text, 'auto'); $text = iconv($current_encoding, 'UTF-8', $text); return $text; } 我已经测试过了,但是没有用。它出什么问题了?

6
“内容类型:application / json; charset = utf-8”真的是什么意思?
当我向REST服务发出带有JSON正文的POST请求时,我将其包含Content-type: application/json; charset=utf-8在消息头中。没有此标头,我会从服务中获取错误。我也可以Content-type: application/json不用;charset=utf-8部分就成功使用。 究竟是charset=utf-8做什么的?我知道它指定了字符编码,但是如果没有它,服务就可以正常工作。这种编码是否限制了邮件正文中可以包含的字符?

12
为什么我们使用Base64?
维基百科说 当需要对二进制数据进行编码时,通常需要使用Base64编码方案,该二进制数据需要在旨在处理文本数据的媒体上存储和传输。这是为了确保数据在传输过程中保持不变。 但是,不是因为我们的计算机存储的二进制数据就一直以二进制形式存储/传输数据,而这仅取决于您如何解释它?因此,无论您编码位模式010011010110000101101110为ManASCII或如TWFu为Base64,你最终将存储相同的位模式。 如果最终编码是用零和一表示的,并且每台机器和媒体都可以处理它们,那么将数据表示为ASCII还是Base64有什么关系呢? “旨在处理文本数据的媒体”是什么意思?他们可以处理二进制=>他们可以处理任何东西。 谢谢大家,我想我现在明白了。 当我们发送数据时,我们不能确定数据将以我们期望的格式解释。因此,我们发送双方都可以理解的以某种格式(如Base64)编码的数据。这样,即使发送方和接收方对相同内容的解释不同,但由于它们在编码格式上达成共识,因此不会错误地解释数据。 以Mark Byers为例 如果我要发送 Hello world! 一种方法是像ASCII一样发送 72 101 108 108 111 10 119 111 114 108 100 33 但是字节10在另一端可能无法正确解释为换行符。因此,我们使用ASCII的子集对其进行编码,如下所示 83 71 86 115 98 71 56 115 67 110 100 118 99 109 120 107 73 61 61 即使在接收器碰巧对其余字符集有不同的解释的情况下,以相同信息量传输更多数据为代价,这也确保了接收器可以按预期方式解码数据。

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.