unicode标准中有足够的代码点,你需要4个字节来存储它们.这就是UTF-32编码所做的.然而,UTF-8编码通过使用称为"可变宽度编码"的东西以某种方式将这些压缩到更小的空间.
实际上,它设法在一个字节中代表US-ASCII的前127个字符,它看起来与真正的ASCII完全相同,因此您可以将许多ascii文本解释为UTF-8而不对其执行任何操作.干净的把戏.那么它是怎样工作的?
我将在这里提出并回答我自己的问题,因为我只是做了一些阅读以弄清楚它并且我认为它可能会节省其他人一些时间.如果我有一些错误,也许有人可以纠正我.
是否有内置的方法在Excel VBA中对字符串进行URL编码,还是需要手动滚动此功能?
我遇到了一个我以前从未见过的新问题:我的客户端正在将文件添加到我们构建的项目中,并且一些文件名中包含特殊字符,因为有些字是西班牙语.
例如,我正在测试的文件中有一个á.我在css文件中将该图像称为背景图像,但在Safari中它不显示.但它确实在FF和Chrome上.
作为测试,我将链接粘贴到浏览器和同样的事情.适用于FF和Chrome,但Safari会抛出错误.所以语言字符是我猜的吗?
Firefox转换以下网址并将á更改为%CC%81并加载图像.
http://www.themediacouncil.com/test/nonascii/LA-MAR_Cebiche -Clássico_foto -恩里克-庇隆,470x120-1371827671.jpg
你可以看到它突破......但FF和Chrome将其转换为:http: //www.themediacouncil.com/test/nonascii/LA-MAR_Cebiche-Cla%CC%81ssico_foto-Henrique-Peron-470x120-1371827671.jpg
你也可以在这里看到这个:http://jsfiddle.net/Md4gZ/2/
.testbox {
width:340px;
height:100px;
background:url('http://www.themediacouncil.com/test/nonascii/LA-MAR_Cebiche-Clássico_foto-Henrique-Peron-470x120-1371827671.jpg') no-repeat top left;
}
所以最正确的方法来解决这个问题.我正在开发PHP和WORDPRESS.我宁愿不必告诉客户回去并用特殊字符替换所有文件.
任何帮助表示赞赏.谢谢!
如何将 Unicode char U+1F604 放入 Java String?我尝试使用
String s = "\u1F604";
Run Code Online (Sandbox Code Playgroud)
但它相当于
String s = "\u1F60"+"4";
Run Code Online (Sandbox Code Playgroud)
它被分成2个字符。