标签: encoding

为什么在python中用字符串声明unicode?

我还在学习python,我有一个疑问:

在python 2.6.x中,我通常在文件头中声明编码,如下所示(如PEP 0263)

# -*- coding: utf-8 -*-
Run Code Online (Sandbox Code Playgroud)

在那之后,我的字符串像往常一样写:

a = "A normal string without declared Unicode"
Run Code Online (Sandbox Code Playgroud)

但每次我看到python项目代码时,都不会在标题处声明编码.相反,它在每个字符串声明如下:

a = u"A string with declared Unicode"
Run Code Online (Sandbox Code Playgroud)

有什么不同?这是为了什么目的?我知道Python 2.6.x默认设置ASCII编码,但它可以被头声明覆盖,那么每个字符串声明的重点是什么?

附录:似乎我已将文件编码与字符串编码混合在一起.谢谢你解释:)

python encoding utf-8

120
推荐指数
4
解决办法
15万
查看次数

在C#中确定字符串的编码

有没有办法在C#中确定字符串的编码?

说,我有一个文件名字符串,但我不知道它是用Unicode UTF-16编码还是系统默认编码,我怎么知道呢?

c# string encoding

119
推荐指数
7
解决办法
17万
查看次数

"â€"在页面上显示而不是"'"

’正在我的页面上显示而不是'.

我在我的标签和HTTP标头中都Content-Type设置了:UTF-8<head>

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

另外,我的浏览器设置为Unicode (UTF-8):

在此输入图像描述

那么问题是什么,我该如何解决?

encoding utf-8 mojibake

119
推荐指数
8
解决办法
23万
查看次数

SQL Server 2005 T-SQL中的Base64编码

我想编写一个T-SQL查询,我将字符串编码为Base64字符串.令人惊讶的是,我找不到任何用于执行Base64编码的本机T-SQL函数.是否存在本机功能?如果没有,在T-SQL中进行Base64编码的最佳方法是什么?

t-sql base64 encoding sql-server-2005

116
推荐指数
5
解决办法
14万
查看次数

编写没有字节顺序标记(BOM)的文本文件?

我正在尝试使用带有UTF8编码的VB.Net创建一个文本文件,没有BOM.任何人都可以帮助我,怎么做?
我可以用UTF8编码写文件但是,如何从中删除字节顺序标记?

edit1:我尝试过像这样的代码;

    Dim utf8 As New UTF8Encoding()
    Dim utf8EmitBOM As New UTF8Encoding(True)
    Dim strW As New StreamWriter("c:\temp\bom\1.html", True, utf8EmitBOM)
    strW.Write(utf8EmitBOM.GetPreamble())
    strW.WriteLine("hi there")
    strW.Close()

        Dim strw2 As New StreamWriter("c:\temp\bom\2.html", True, utf8)
        strw2.Write(utf8.GetPreamble())
        strw2.WriteLine("hi there")
        strw2.Close()
Run Code Online (Sandbox Code Playgroud)

1.html仅使用UTF8编码创建,2.html使用ANSI编码格式创建.

简化方法 - http://whatilearnttuday.blogspot.com/2011/10/write-text-files-without-byte-order.html

vb.net encoding byte-order-mark file-handling

115
推荐指数
4
解决办法
8万
查看次数

如何在Eclipse中支持UTF-8编码

如何在eclipse中添加UTF-8支持?我想添加例如俄语,但eclipse不会支持它.我该怎么办?请指导我.

eclipse encoding utf-8 character-encoding

115
推荐指数
6
解决办法
19万
查看次数

ruby 1.9:UTF-8中的无效字节序列

我在Ruby(1.9)中编写了一个爬虫程序,它从很多随机站点中消耗了大量的HTML.
当试图提取链接时,我决定使用.scan(/href="(.*?)"/i)而不是nokogiri/hpricot(主要加速).问题是我现在收到很多" invalid byte sequence in UTF-8"错误.
根据我的理解,该net/http库没有任何特定于编码的选项,并且所引入的内容基本上没有正确标记.
实际使用传入数据的最佳方法是什么?我尝试.encode使用替换和无效选项集,但到目前为止没有成功...

ruby encoding utf-8

109
推荐指数
5
解决办法
12万
查看次数

如何在Java中安全地编码字符串以用作文件名?

我从外部进程收到一个字符串.我想使用该String来创建文件名,然后写入该文件.这是我的代码片段:

    String s = ... // comes from external source
    File currentFile = new File(System.getProperty("user.home"), s);
    PrintWriter currentWriter = new PrintWriter(currentFile);
Run Code Online (Sandbox Code Playgroud)

如果s包含无效字符,例如基于Unix的OS中的"/",则会(正确地)抛出java.io.FileNotFoundException.

如何安全地编码String以便它可以用作文件名?

编辑:我希望的是一个API调用,它为我做这个.

我可以做这个:

    String s = ... // comes from external source
    File currentFile = new File(System.getProperty("user.home"), URLEncoder.encode(s, "UTF-8"));
    PrintWriter currentWriter = new PrintWriter(currentFile);
Run Code Online (Sandbox Code Playgroud)

但我不确定URLEncoder是否可靠用于此目的.

java string encoding file

108
推荐指数
5
解决办法
7万
查看次数

在ios9中替换stringByAddingPercentEscapesUsingEncoding?

在iOS8和之前我可以使用:

NSString *str = ...; // some URL
NSString *result = [str stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
Run Code Online (Sandbox Code Playgroud)

在iOS9中stringByAddingPercentEscapesUsingEncoding已被替换为stringByAddingPercentEncodingWithAllowedCharacters:

NSString *str = ...; // some URL
NSCharacterSet *set = ???; // where to find set for NSUTF8StringEncoding?
NSString *result = [str stringByAddingPercentEncodingWithAllowedCharacters:set];
Run Code Online (Sandbox Code Playgroud)

我的问题是:在哪里找到所需的NSCharacterSet(NSUTF8StringEncoding)以便正确更换stringByAddingPercentEscapesUsingEncoding

url encoding objective-c deprecated ios

108
推荐指数
4
解决办法
8万
查看次数

Java中的"用于编码的不可映射字符"警告

我正在编写一个Java项目,在编译时发出以下警告:

/src/com/myco/apps/AppDBCore.java:439: warning: unmappable character for encoding UTF8
    [javac]         String copyright = "? 2003-2008 My Company. All rights reserved.";
Run Code Online (Sandbox Code Playgroud)

我不确定SO会如何在日期之前渲染角色,但它应该是版权符号,并在警告中显示为钻石中的问号.

值得注意的是,角色正确地出现在输出工件中,但警告是令人讨厌的,包含此类的文件可能有一天会被文本编辑器触及,这会错误地保存编码...

如何将此字符注入"copyright"字符串,以便编译器满意,并且该符号保留在文件中而没有潜在的重新编码问题?

java encoding ascii utf-8

106
推荐指数
8
解决办法
19万
查看次数